文件管理命令:
1、cat 选项 文件名
-n 显示文件行数
-e 显示文件特殊字符(如:行终结符$)
[root@localhost var]# cat 11 lsssoo99999f kljlkjl hhljljl khlkjl;l hlkjlkl [root@localhost var]# cat -n 11 1 lsssoo99999f 2 kljlkjl 3 hhljljl 4 khlkjl;l 5 hlkjlkl [root@localhost var]# cat -e 11 lsssoo99999f$ kljlkjl $ hhljljl$ khlkjl;l$ hlkjlkl$
2、more 文件名 分屏显示文件内容(到文件尾部会自动退出)
其快捷键: Ctrl+d 往下翻半屏
回车键 向下一行
空格键 往下翻一屏
b 往上翻一屏
3、less 文件名 分屏显示文件内容(到文件尾部不自动退出)
其快捷键:Ctrl+d 往下翻半屏
Ctrl+u 向上翻半屏
回车键 向下一行
k 向上一行
空格键 往下翻一屏
b 往上翻一屏
#G 跳至#行
/关键字 ?关键字
n 下一个
N 上一个
4、tail 选项 文件名 查看文件的尾部多少行
-# 显示文件最后#行,不跟行数默认显示10行
-f 监视一个文件有没有新增内容,主要用于日志(以.log结尾)查看
5、echo “ccc” >> 文件 把ccc添加到文件中
查看最后两行:
[root@localhost var]# tail -2 11 khlkjl;l hlkjlkl
监听文件11的修改内容:
开启监听
在另一伪终端中添加内容到文件11中
[root@localhost var]# echo "khlkhouoi 123214" >> 11 [root@localhost var]#
监听结果
6、head 选项 文件名 查看文件首部的多少行
-# 显示文件首部#行,不跟行数默认显示10行
[root@localhost var]# head -3 11 uu hgfgfugyu lsssoo99999f [root@localhost var]# cat -n 11 1 uu 2 hgfgfugyu 3 4 hhkljhl 5 khij lkjl‘ 6 khll 7 8 9 lsssoo99999f 10 kljlkjl 11 hhljljl 12 khlkjl;l 13 hlkjlkl 14 aadfsdf 15 khlkhouoi 123214 ///默认为十行 [root@localhost var]# head 11 uu hgfgfugyu hhkljhl khij lkjl‘ khll lsssoo99999f kljlkjl
7、删除文件:rm 格式:rm 选项 文件名
-f 强制删除(force:强制)
-r 递归删除文件,可以删除目录
-i 显示提示 (默认)
强制删除命令:
[root@localhost var]# ls 11 cc dd ee lleoaoi88789afa [root@localhost var]# rm 11 rm: remove regular file `11‘? y [root@localhost var]# rm -f cc [root@localhost var]# ls dd ee lleoaoi88789afa
递归删除命令(目录mml中含有文件ss):
[root@localhost var]# ls dd ee lleoaoi88789afa mml [root@localhost var]# rm -r mml rm: descend into directory `mml‘? y rm: remove regular file `mml/ss‘? y rm: remove directory `mml‘? y [root@localhost var]# ls dd ee lleoaoi88789afa
-i为默认值,可以通过type命令查看:
[root@localhost var]# type rm rm is aliased to `rm -i‘
8、复制文件:cp 格式:cp 选项 源文件(文件、目录) 目标文件(文件、目录)
(1、源文件是文件,若目标文件不存在则创建文件,其内容与源文件一样;若目标文件存在则覆盖2、源文件是文件,若目标文件是目录(改目录必须存在),则是将源文件的内容放在该目录下 3、源文件是目录,必须使用选项才能将目录复制到目标目录下)
cp 选项 源文件(文件、目录) 目标文件(文件、目录)
-r 复制目录,会实现递归复制
-d 复制目标文件为软连接文件的本身,非其指向文件
-a =-r+-d
-i 提示是否进行覆盖
-f 强制进行(不建议使用)
递归复制:
[root@localhost ss]# mkdir mml/ee/cc [root@localhost ss]# cp -r mml/ ee/ cp: overwrite `ee/mml/cc‘? y [root@localhost ss]# cd ee/ [root@localhost ee]# ls mml
源文件是文件,目标文件不存在:
[root@localhost var]# ls dd ee lleoaoi88789afa mml ss [root@localhost var]# cp dd cc [root@localhost var]# ls cc dd ee lleoaoi88789afa mml ss [root@localhost var]# cat dd 420 cat -n bb 421 head -10 history >> cc 422 history |head -10 423 history |head -10 >> dd 424 ls 425 cat dd 426 cat -n dd 427 cat -n aa 428 cat -n bb 429 history |tail -10 >dd [root@localhost var]# cat cc 420 cat -n bb 421 head -10 history >> cc 422 history |head -10 423 history |head -10 >> dd 424 ls 425 cat dd 426 cat -n dd 427 cat -n aa 428 cat -n bb 429 history |tail -10 >dd
源文件为文件,目标文件存在:
[root@localhost var]# cat ee ls: cannot access ff: No such file or directory [root@localhost var]# cp ee cc cp: overwrite `cc‘? y [root@localhost var]# cat cc ls: cannot access ff: No such file or directory
源文件为文件,目标文件为目录:
[root@localhost var]# cd ss [root@localhost ss]# ls mml [root@localhost ss]# cd .. [root@localhost var]# cp cc ss [root@localhost var]# cd ss [root@localhost ss]# ls cc mml
源文件为目录,目标文件为目录:
[root@localhost var]# mkdir mml ss [root@localhost var]# ls dd ee lleoaoi88789afa mml ss [root@localhost var]# cd mml [root@localhost mml]# ls [root@localhost mml]# vim cc [root@localhost mml]# ls cc [root@localhost mml]# cd .. [root@localhost var]# cp -r mml ss [root@localhost var]# cd ss [root@localhost ss]# ls mml [root@localhost ss]# cd mml [root@localhost mml]# ls cc
9、移动文件:mv 格式:mv 选项 源文件 目标文件
-i 显示提示
-f 强制移动(不建议使用)
[root@localhost var]# mv cc mml/ [root@localhost var]# ls mml/ cc [root@localhost var]# type mv mv is aliased to `mv -i‘
10、Linux的重定向(输入输出)及管道
输出:标准输出(正确输出) 通常用1标示
错误输出 通常用2标示
输入:标准输入 0
重定向:改变输入、输出的显示形式
输出 >> 追加的形式,将输出的内容显示到后面的文件或目录中
> 覆盖的形式
以上都是默认标准输出为:1 >>,想将错误的也重定向的话就用:2 >>
输入 << 当输入后面的内容时退出输入,显示内容
管道:| 把一个命令的输出作为下一命令的输入
形式 命令1|命令2|命令3 命令1是命令2需要的,命令2是命令3需要的,命令3就是我们需要的
Eg:输出历史记录的前十行 [root@localhost var]# history |head -10 1 vim /etc/selinux/config 2 iptables -L 3 service iptables stop 4 vim /etc/sysconfig/network-scripts/ifcfg-eth0 5 service network restart 6 ifconfig 7 init 0 8 ls 9 type 10 ls type 将历史记录前十行重定向到新建文件dd中(不覆盖) [root@localhost var]# history |head -10 >> dd [root@localhost var]# ls 11 aa bb cc dd lleoaoi88789afa llowe2345llda [root@localhost var]# cat dd 1 vim /etc/selinux/config 2 iptables -L 3 service iptables stop 4 vim /etc/sysconfig/network-scripts/ifcfg-eth0 5 service network restart 6 ifconfig 7 init 0 8 ls 9 type 10 ls type 再将历史记录后十行重定向到dd中,(覆盖) [root@localhost var]# history |tail -10 >dd [root@localhost var]# cat dd 420 cat -n bb 421 head -10 history >> cc 422 history |head -10 423 history |head -10 >> dd 424 ls 425 cat dd 426 cat -n dd 427 cat -n aa 428 cat -n bb 429 history |tail -10 >dd ##dd文件中的内容已被改变## 将错误的内容输出 [root@localhost var]# ls ff ls: cannot access ff: No such file or directory [root@localhost var]# ls ff 2>> ee [root@localhost var]# cat ee ls: cannot access ff: No such file or directory ##ff文件不存在,所以ls ff会报错,想把这个错误的信息显示文件ee中## tr:格式转换,转换的是一种形式 eg:echo ddd2bb tr "2" "s" 显示:dddsbb Eg:将上面的文件dd中的数字全部转化成a [root@localhost var]# cat dd | tr "0-9" "a" aaa cat -n bb aaa head -aa history >> cc aaa history |head -aa aaa history |head -aa >> dd aaa ls aaa cat dd aaa cat -n dd aaa cat -n aa aaa cat -n bb aaa history |tail -aa >dd
原文地址:http://liangyu.blog.51cto.com/10069887/1630082