Home » 未分类 » linux 学习笔记 二

linux 学习笔记 二

ln命令 主要用于产生命令,创建链接

ls -s source_file destination

创建硬链接

ln file1 file2

当对某个文件创建硬链接时,硬链接数会增加

ls -l -rw-rw-r– 2 arts arts 15 717 09:59 a.txt

-rw-rw-r– 2 arts arts 15 717 09:59 a.txt.hln

不占空间

不可以跨文件系统进行链接

不可以对目录进行了链接

何时被释放? 软链接,当文件被删除时释放。硬链接数为0的时候真正释放数据块

创建软链接

ln -s file1 file2 -s表示创建的是软链接soft

需占用空间来存放路径信息

软链接操作的时候保存的是一个路径信息。

可以跨文件系统进行链接

man 、–help info命令查看帮助手册

man name

spacebar 空格。滚动一屏幕

return 回车

q 退出

/string 搜索

n

man -k keyword 检索关键字

ls –help 查看简单的帮助信息

info

 

匹配符

ls d* * 匹配零个或者多个字符

ls d? 匹配一个字符

ls [b-f]b* 匹配一个集合或者和一个连续的字符

;用于分隔多个命令

date 显示时间

cal 日历

lp 打印

> 重定向,一般是把文本内容放到文件里面去 ↔

 

>> 输出重定向追加类型、2> 错误重定向,标准错误输出、> 输出重定向、 < 输入重定向

 

cat 无参数时,标准输入–>标准输入

cat > file 表示修改cat输出的定向,定向到文件

cat <file 表示标准输入定向到文件里面,不改变标准输入,把文件输出到标准输出

cat < file1 >file2 file1文件里的内容放到fiel2里面去。

cat /etc/passwd;ls -l /etc/;ln /etc/./etc.ln 2> err.log

more 命令

用于显示信息,一次显示一屏

词典:goldendic 附加词库即可用

Text Operating

cat 命令

cat /dev/null > ./a.txt null : 空洞 所以次操作表示清空a.txt里面的内容

zero:填充0

 

awk -F:'{print $1 “\t” $6}’ | sort >

awk -F 以后面的符号来分割内容,也就是冒号,后面表示打印第一项,和第六项的内容,

 

\

1、表示赚义字符

2、表示续行字符,续行后不能跟空格,需要直接加回车

\+空格 = 空格

 

sort 排序

 

cat a.txt | awk -F\ ‘{print $1 “\t” $3}’

 

head tail 显示前10或者后10行命令

head -n filename 显示前n

tail -n filename 显示末尾n

 

uniq 命令 跳过重复的行,但是不改变源文件

uniq filename

 

diff 比较两个文件的不同之处,然后以列表的形式显示

a.txta a b a a

b.txta a a a a

diff a.tx b.txt

>

3c3 表示第三行change c:表示改变 a:表示增加 d:表示缺少

< b 表示地一个文件为b

分隔两个文件

> a 表示第二个文件为a

diff -u 表示合并模式 diff -u a.txt b.txt 表示a.txt 为主体 b.txt 为客体

— a.txt 2013-07-17 14:24:14.485963439 +0800

+++ b.txt 2013-07-17 14:24:39.537962699 +0800

@@ -1,5 +1,5 @@

a

a

-b

+a

a

a

 

echo 命令 拷贝任意所输入到命令行的东西

echo -option message

eho “hellp word“

echo -e “hello \t word” —识别转义字符

echo –n “hello word” —跳过输出换行

script 记录所有的或者一部分的会话,包括你的输入和系统的回应

script -a filename

 

()使用小括号封装成小SHELL 命令

(head /etc/passwd;tail /etc/passwd) | awk -F: ‘{print $1 “\t” $3}’|cat > ./userinfo1

 

小括号里面的命令会被有限执行,输出结果被当作一个整体使用。

VI文本编辑器

命令模式

命令模式

输入模式

vi filename open or createa file

vi

i:在光标当前位置前插入

a:在光标所在位置后插入

o:在光标所在行下插入一空行

O:上一行起一个空行

I:自动跳到行首

A:自动跳到行尾

删除

x:删除一个字符

dw:删除一个词

u:撤销

3dw:删除三个次

dd:删除一个行

2dd:删除两个行 ndd

:5,10d:在命令行模式下执行,删除第五行到第十行内容

替换

r:替换一个字符

cw:替换一个单词先删除,自动进入插入模式

cc:替换一行

C:替换从光标到行尾

复制和拷贝

yw 拷贝词

yy 拷贝行

p 当前行粘贴

3yw 复制多行

:120co3 拷贝行120在行3之后

:34移动行3到行5在行6之后

撤销

u undo

ctrl +r

设置行号

:set nu

保存文件

w 存盘

w newfile 存成新文件

wq 存盘退出vi

:q! 强制退出

shift zz 自动保存退出

简单操作

~改变大小写

J 把当前行和下一行连起来

u 废除刚才的编辑操作

:set nu 显示行号永久显示行号需要修改配置文件 vi ~/.vimrc

21光标停在21

21G/gg光标停在制定行(gg,G文件尾)

50zz 跳一半空的上来

shift + G 到行尾 ,gg 直接跳到行首

ctrl +f 跳转一页

ctrl +b 上一页

w(web) 下一个词的词首

e 下一个次的词尾

b 上一个词

查找

/从当前行向下查找

?从当前行向上查找

n 查找继续

nohl 取消高亮

r /etc/passwd 在光标位置插入另外一个文件 必须与可读权限

l,$s/旧串/新串/g 替换全文

$ 表示末尾行

% 表示全文

VI 可视模式——类似鼠标框选

字符 v 命令模式进入

V 命令模式进入

VI 分栏模式

水平 :split finame vp

垂直: vsplit finame vs

ctrl +ww 切换分栏

ctrl +w 加方向键

:wqa 保存全部并退出

:qa!全部强制退出

 

gcc编译

附注: 使用 -std=c99 -std=gnu99 来编译您的代码

This entry was posted in 未分类. Bookmark the permalink.