-
linux上的文件查看与管理类命令
mkdir
作用:
创建目录
语法:
mkdir [OPTION]… DIRECTORY…
示例:
mkdir -p /tmp/x/y/z //创建目录,如果路径不存在,按需创建父目录
mkdir -pv /tmp/x/y/z //创建目录和显示过程
rmdir
作用:
移除空目录
语法:
rmdir [OPTION]… DIRECTORY…
示例:
rmdir -pv x/y/z //递归移除空目录并显示过程
cat
作用:
catenate的缩写,链接文件并打印到标准输出
语法:
cat [OPTION]… [FILE]…
示例:
cat /etc/rc.d/init.d/functions //查看文件内容
cat /etc/rc.d/init.d/functions > /tmp/functions //复写文件内容到指定的文件
cat 1.txt 2.txt > 3.txt //复写两个文件的内容到指定的一个文件中
cat 1.txt >> 2.txt //添加文件内容到指定文件中
tac
作用:
cat的反操作,通常用于查看日志文件
语法:
tac [OPTION]… [FILE]…
head
作用:
打印文件的前10行到标准输出
语法:
head [OPTION]… [FILE]…
示例:
head /etc/rc.d/init.d/functions //显示文件前10行内容
head -15 /etc/rc.d/init.d/functions //显示文件前15行内容
head -n 5 /etc/rc.d/init.d/functions /tmp/1.txt //显示两个文件的前5行内容
head -c 30 /etc/rc.d/init.d/functions //显示前30个字节的内容
head -n 4 *.txt //显示本目录中以.txt的文件的前4行
tail
作用:
打印文件的尾10行到标准输出
语法:
tail [OPTION]… [FILE]…
示例:
tail etc/rc.d/init.d/functions //显示文件的尾部10行
tail -f etc/rc.d/init.d/functions //持续显示文件的尾部10行
more
作用:
分屏查看文件内容,翻屏至尾部自动退出
语法:
more [options] file […]
示例:
more etc/rc.d/init.d/functions //B键前一屏,空格键后一屏,回车键下一行,ALT+D后半屏
less
作用:
more命令的加强版,翻屏至尾部不退出,持续监视文件更新
语法:
less -?
less –help
less -V
less –version
less [-[+]aABcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
[-b space] [-h lines] [-j line] [-k keyfile]
[-{oO} logfile] [-p pattern] [-P prompt] [-t tag]
[-T tagsfile] [-x tab,…] [-y lines] [-[z] lines]
[-# shift] [+[+]cmd] [–] [filename]…
(See the OPTIONS section for alternate option syntax with long option
names.)
示例:
less /etc/rc.d/init.d/functions //B键前一屏,空格键后一屏,回车键下一行,K键上一行,ALT+D后半屏,ALT+U前半屏,G结尾,g开头,50g第50行
stat
作用:
显示文件或文件系统状态
语法:
stat [OPTION]… FILE…
示例:
stat initial-setup-ks.cfg //显示文件状态
stat -f /dev/sda //显示文件系统状态
touch
作用:
改变文件的时间戳或创建空文件
语法:
touch [OPTION]… FILE…
示例:
touch -c /var/log/syslog //修改文件的时间戳,如果文件存在的话,如果不存在不创建空文件
touch -t 101509291558.42 initial-setup-ks.cfg //按指定时间修改文件的时间戳
touch -a initial-setup-ks.cfg //修改文件的访问时间
touch -m initial-setup-ks.cfg //修改文件的更改时间
tree
作用:
显示目录树
语法:
tree [-acdfghilnpqrstuvxACDFQNSUX] [-L level [-R]] [-H baseHREF] [-T
title] [-o filename] [–nolinks] [-P pattern] [-I pattern] [–inodes]
[–device] [–noreport] [–dirsfirst] [–version] [–help] [–filelimit
#] [–si] [–prune] [–du] [–timefmt format] [directory …]
示例:
tree -L 2 /etc //显示两层以内的目录树
cp
作用:
复制文件或目录
语法:
cp [OPTION]… [-T] SOURCE DEST //单源复制
cp [OPTION]… SOURCE… DIRECTORY /*多源
cp [OPTION]… -t DIRECTORY SOURCE… 复制*/
示例:
cp /etc/rc.d/init.d/functions /home //复制文件到目录
cp /etc/rc.d/init.d/functions /home/functions //复制文件到文件
cp /etc/{issue,fstab} /home/hunterlee //多源复制文件
cp -rf /home /tmp //递归复制目录并强制覆盖
cp -a /etc /tmp //归档复制
cp -d /etc/rc.local /tmp //复制链接文件本身,而不是链接文件指向的源文件
mv
作用:
移动或重命名文件,或目录
语法:
mv [OPTION]… [-T] SOURCE DEST
mv [OPTION]… SOURCE… DIRECTORY
mv [OPTION]… -t DIRECTORY SOURCE…
示例:
mv functions func //重命名文件
mv func /tmp/ //移动文件
mv /tmp/home /home/hunterlee //移动目录
rm
作用:
删除文件或目录
语法:
rm [OPTION]… FILE…
示例:
rm /home/hunterlee/issue //删除文件
rm -rf /tmp/home //递归删除目录并不交互
rm -i ./fstab //移除文件时提示是否删除
2. bash的工作特性及命令执行状态返回值和命令行展开机制
命令操作成功时返回状态0,操作失败返回状态1~255,保存于特殊变量$?中,改变量只能保存最后一次命令执行的状态结果。
命令行展开机制:
~自动展开为当前用户的家目录,或指定用户的家目录。
{}可以将括号内的目录展开为多个路径,例如/a/{x,y}相当于 /a/x /a/y。
示例:
mkdir -pv x/y/{a,b/{x,y,z/{a,b}}}
//操作相当于
mkdir: created directory ‘x’
mkdir: created directory ‘x/y’
mkdir: created directory ‘x/y/a’
mkdir: created directory ‘x/y/b’
mkdir: created directory ‘x/y/b/x’
mkdir: created directory ‘x/y/b/y’
mkdir: created directory ‘x/y/b/z’
mkdir: created directory ‘x/y/b/z/a’
mkdir: created directory ‘x/y/b/z/b’
3. 请使用命令行展开机制完成一下练习:
(1)解:mkdir /tmp/{a,b}_{c,d}
(2) mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/networkscripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
4. 元数据,数据的数据,包括文件名,大小,数据块数量,块大小,文件类型,设备号,Inode,链接数,权限,Uid,Gid,安全上下文,数据访问时间,数 据修改时间,元数据改动时间。可以用ls -l 或ll或stat命令查看文件的元数据。可以用touch命令修改文件的时间戳信息。
5. 可以用alias命令定义别名。形如alias [name=['command option… arg…']],如,alias cp='cp -i'。
可以用$(command option…)或反引号`command option…`应用命令的执行结果。
6. 求:显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
解:ls -d /var/l*[[:digit:]]*[[:lower:]]
7. 求:显示/etc目录下,以任意数字开头,且以非数字结尾的文件或目录。
解: ls -d /etc/[[:digit:]]*[^[:digit:]]
8. 求:显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
解:ls -d /etc/[^[:alpha:]][[:alpha:]]*
9. 求:在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,形如:tfile-2016-05-27-09-32-22。
解:touch /tmp/tfile-$(date +%C%y-%m-%d-%H-%M-%S)
10. 求:复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
解:cp -rf /etc/p*[^[:digit:]] /tmp/mytest1
11. 求 复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
解:cp -rf /etc/*.d /tmp/mytest2
12. 求 复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
解:cp /etc/[lmn]*.conf /tmp/mytest3
原创文章,作者:hunter_li,如若转载,请注明出处:http://www.178linux.com/51809