1、 Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
ls
使用方式:ls [OPTION]… [DIR]…
常用选项: -a:显示所有档案及目录; -A:显示除影藏文件“.”和“..”以外的所有文件列表; -C:多列显示输出结果。这是默认选项; -l:与“-C”选项功能相反,所有输出信息用单列格式输出; -F:在每个输出项后追加文件的类型标识符, -i:显示文件索引节点号(inode)。 -k:以KB(千字节)为单位显示文件大小; -l:以长格式显示目录下的内容列表。 -s:显示文件和目录的大小,以区块为单位; -R:递归处理
stat:获取文件的源数据
cat:查看文件
file:查看文件内容类型
echo:回显命令
常用选项: -n: 禁止自动添加换行符号; -e: 允许使用转义符; \n: 换行 \t: 制表符
cp:复制
常用选项: -i:交互式 -r, -R: 递归复制 -a: 归档,保留文件所有属性 -f:强制
mv:移动
常用选项: -i: 交互式 -f: 强制
rm:删除
常用选项: -i: 交互式 -f: 强制删除 -r: 递归
install:复制
常用选项: -m:指定目标文件权限 -o:指定目标文件属主 -g:指定目标文件属组 -d:创建空目录
touch:创建空文件或修改时间戳
-a -t STAMP:访问时间戳 -m -t STAMP:修改时间戳 -c:如果文件不存在就不创建
head:显示文件前N行
常用选项: -c #:获取前#字节内容 -n #:获取前#行内容
tail:显示文件后N行
常用选项: -c #:获取后#字节内容 -n #:获取后#行内容 -f:实时监测文件新增内容
wc:文件统计
常用选项: -l:显示文件行数 -w:显示文件单词数 -c:显示文件字节数
sort:排序
常用选项: -f:忽略字符大小写 -r:逆序 -t DELIMITER -k #:以DELIMITER为分隔符,以第#个字段为标准排序 -n:以数值大小进行排序 -u:排序后去重
uniq:排序
常用选项: -c:显示每行重复出现的次数 -d:仅显示重复过的行 -u:仅显示不曾重复过的行
cut:切片
常用选项: -d DELIMITER:指明字段分隔符 -f #:指明取第#个字段 --output-delimiter=:指明输出字段分隔符
tr:替换
常用选项: -d:删除给出的字符集 -dc:字符集补集,将不在补集中的所有字符删除
2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
(1)命令执行状态返回值
[root@study03 ~]# ls /etc &> /dev/null [root@study03 ~]# echo $? 0 [root@study03 ~]#
(2)命令行展开
[root@study03 ~]# ls anaconda-ks.cfg [root@study03 ~]# cp anaconda-ks.cfg{,.bak} [root@study03 ~]# ls anaconda-ks.cfg anaconda-ks.cfg.bak
3、请使用命令行展开功能来完成以下练习:
[root@study03 ~]# mkdir -pv /tmp/{a,b}_{c,d} mkdir: 已创建目录 "/tmp/a_c" mkdir: 已创建目录 "/tmp/a_d" mkdir: 已创建目录 "/tmp/b_c" mkdir: 已创建目录 "/tmp/b_d" [root@study03 ~]# tree /tmp /tmp ├── a_c ├── a_d ├── b_c ├── b_d ├── fstab ├── ks-script-mXddqP ├── yum.log └── yum_save_tx.2016-06-19.20-38.hpxX0j.yumtx 4 directories, 4 files [root@study03 ~]#
4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
源数据:
文件大小 创建时间 文件的权限 文件的属主属组 atime mtime ctime 文件类型 文件被硬链接的次数 .......
如何查看:
[root@study03 ~]# stat anaconda-ks.cfg 文件:"anaconda-ks.cfg" 大小:960 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:202352576 硬链接:1 权限:(0600/-rw-------) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2016-06-21 10:07:00.487995284 +0800 最近更改:2016-06-15 18:44:55.739969731 +0800 最近改动:2016-06-15 18:44:55.739969731 +0800 创建时间:- [root@study03 ~]#
修改时间戳:请使用touch命令,前面已有介绍,这里不再演示
5、如何定义一个命令别名,如何在命令中引用另一个命令的执行结果
定义别名:
[root@study03 ~]# alias ld='ls -d'
命令引用:
[root@study03 ~]# ll `which passwd` -rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd
6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
[root@study03 ~]# ls /var/l*[[:lower:]]
7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
[root@study03 ~]# ls /etc/[0-9]*[^0-9] /etc/5ks: /etc/5s: [root@study03 ~]#
8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
[root@study03 ~]# ls /etc/[^a-zA-Z][a-zA-Z]* /etc/5ks: /etc/5s: [root@study03 ~]#
9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
[root@study03 ~]# touch /tmp/tfile-$(date "+%F-%H-%M-%S") [root@study03 ~]# ls /tmp a_c b_c fstab tfile-2016-06-21-11-18-28 yum_save_tx.2016-06-19.20-38.hpxX0j.yumtx a_d b_d ks-script-mXddqP yum.log [root@study03 ~]#
10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
[root@study03 ~]# mkdir /tmp/mytest1 [root@study03 ~]# cp -r /etc/p*[^0-9] /tmp/mytest1 [root@study03 ~]# ls /tmp/mytest1 pam.d passwd- php.ini plymouth popt.d ppp printcap profile.d python passwd php.d pki pm postfix prelink.conf.d profile protocols [root@study03 ~]#
11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
[root@study03 ~]# cp -r /etc/*.d /tmp/mytest2/ [root@study03 ~]# ls /tmp/mytest2/ bash_completion.d dnsmasq.d logrotate.d php.d rc1.d rc6.d sudoers.d binfmt.d dracut.conf.d modprobe.d popt.d rc2.d rc.d sysctl.d chkconfig.d grub.d modules-load.d prelink.conf.d rc3.d rsyslog.d tmpfiles.d cron.d init.d my.cnf.d profile.d rc4.d rwtab.d xinetd.d depmod.d ld.so.conf.d pam.d rc0.d rc5.d statetab.d yum.repos.d [root@study03 ~]#
12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
[root@study03 ~]# cp -r /etc/[lmn]*.conf /tmp/mytest3/ [root@study03 ~]# ls /tmp/mytest3/ ld.so.conf libuser.conf logrotate.conf mke2fs.conf libaudit.conf locale.conf man_db.conf nsswitch.conf [root@study03 ~]#
原创文章,作者:Net20-study,如若转载,请注明出处:http://www.178linux.com/19082
评论列表(1条)
写的很好,排版也很棒,10题好像有点小瑕疵,在仔细想想,加油