设为首页 收藏本站
查看: 1062|回复: 0

[经验分享] Linux作业2

[复制链接]

尚未签到

发表于 2018-5-19 13:48:12 | 显示全部楼层 |阅读模式
  1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
  文件管理类命令:
  cp: 拷贝命令
  SYNOPSIS:
  cp [OPTION]... [-T] SOURCE DEST
  cp [OPTION]... SOURCE... DIRECTORY
  cp [OPTION]... -t DIRECTORY SOURCE...
  OPTIONS:
  -a:归档,相当于-dR --preserve=all,在拷贝时会保留源文件的所有信息,包括:权限、属主属组、时间戳、链接等
  -v:verbose,在拷贝时显示详细信息
  -R, -r, --recursive:递归拷贝
  -i, --interactive:在拷贝数据时进行交互提醒
  -p:same as --preserve=mode,在拷贝时保留属主属组和时间戳信息
  -f:强制执行
  Example:
  归档(完整)拷贝/etc/sysconfig/network-scripts目录至/tmp目录下,并在拷贝时显示详细信息:
  # cp -av /etc/sysconfig/network-scripts/ /tmp/
  rm: 删除文件或目录
  SYNOPSIS
  rm [OPTION]... FILE...
  OPTIONS:
  -f, --force:强制执行删除任务,不于提醒
  -i: 在删除每个文件前都给予提醒
  -r, -R, --recursive:递归删除,用于删除目录
  -d, --dir:删除空间目录,相当于rmdir命令
  -v, --verbose:删除时显示详细信息
  Example:
  删除/tmp/network-scripts/目录下的所有文件和子目录,并显示删除过程:
  # rm -frv /tmp/network-scripts/
  mv:移动或重命名文件
  SYNOPSIS
     mv [OPTION]... [-T] SOURCE DEST
     mv [OPTION]... SOURCE... DIRECTORY
     mv [OPTION]... -t DIRECTORY SOURCE...
  OPTIONS:
  -f, --force:在覆盖文件时不于提醒
  -i, --interactive:与-i相反,在覆盖文件时进行提醒
  -v, --verbose:移动文件时给予提醒
  Example:
  将/tmp/b.txt重命名为/tmp/c.txt
# mv  /tmp/b.txt /tmp/c.txt
将/tmp/t2/目录移动至/tmp/d1/下
# mv -v /tmp/t2/ /tmp/d1/  

  
  2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
  bash有以下特性:
  1)、命令执行状态返回值:
  Linux命令或程序执行后有两类结果,分别为:
  (1)、命令或程序的返回值;
例如:# echo "haha"
返回值为:haha  (2)、命令或程序的执行状态结果。状态结果分两类:成功或失败,可通过bash的特殊变量$?来查看;
  命令或程序执行成功时返回:0;
  命令或程序执行失败时返回:1-255。
  例如:
# touch -c a.txt; echo $?
0
# touchh -c a.txt 2> /dev/null; echo $?
127  

  2)、命令行展开;
  以某些bash能够解释的符号来代替命令中的某些参数。
  ~:展开为用户的家目录;
  例:切换至家目录
# cd ~;pwd
/root  {}:可承载一个以逗号分隔的列表,并将其展开为多个路径;
  例:在/tmp/d目录下创建f1,f2,f3三个文件
# touch /tmp/d/f{1,2,3}  
  3、请使用命令行展开功能来完成以下练习:
  (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
# mkdir /tmp/{a,b}_{c,d}  (2)、创建/tmp/mylinux目录下的:
  mylinux/
  ├── bin
  ├── boot
  │   └── grub
  ├── dev
  ├── etc
  │   ├── rc.d
  │   │   └── init.d
  │   └── sysconfig
  │       └── network-scripts
  ├── lib
  │   └── modules
  ├── lib64
  ├── proc
  ├── sbin
  ├── sys
  ├── tmp
  ├── usr
  │   └── local
  │       ├── bin
  │       └── sbin
  └── var
  ├── lock
  ├── log
  └── run
# mkdir -vp /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var,lock,log,run}  
  4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
  文件的元数据信息有:文件名、文件大小、属主属组、硬链接数量、权限信息、访问日期、修改日期、改变日期等 ,可通过stat FILENAME来进行查看。
  修改文体的时间戳信息可使用touch命令,touch命令介绍:
  SYNOPSIS
  touch [OPTION]... FILE...
  OPTIONS:
  -a:修改文体的访问时间
  -m:修改文件的修改时间
  -c:不创建文件
  -t STAMP:使用STAMP代替当前时间,STAMP格式:[[CC]YY]MMDDhhmm[.ss]
  DESCRIPTION:
  修改文件的任何元数据信息都会引起文件改变时间的变化,包括访问和修改时间。因为改变时间记录的就是无数据信息改变的时间。
  例:
  修改a.txt的访问时间和改变时间为当前时间:
# touch -a a.txt  修改a.txt的修改时间为2016年1月2日3点4分5秒,改变时间为当前时间:
# touch -m -t 201601020304.05 a.txt  
  5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
  使用alias命令定义别名,如:# alias c='clear'
  在命令中引用另一个命令的执行结果的方法:
  1)、使用管道;
  例:统计登陆过系统的用户账号:
# last | cut -d' ' -f1 | sort -u | egrep -v 'reboot|wtmp'  2)、使用反引号(``)或$();
  例:创建一个包含当前日期的文件:
# touch file_$(date +"%Y%m%d")  
  6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
# ls -d /var/l*[0-9]*[[:lower:]]  
  7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
# ls -d /tmp/[[:digit:]]*[^[:digit:]]  8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

# ls -d /etc/[^[:alpha:]][[:alpha:]]*  9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-08-06-09-32-22。
# touch /tmp/tfile-`date +"%F-%T" | tr ':' '-'`
or
# touch /tmp/tfile-`date +"%F-%H-%M-%S"`  10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

# mkdir /tmp/mytest1;cp -vr /etc/p*[^0-9] /tmp/mytest1/  11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
# mkdir /tmp/mytest2;cp -vr /etc/*.d /tmp/mytest2  12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
# mkdir /tmp/mytest3;cp -vr /etc/[l,m,n]*.conf /tmp/mytest3  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-462049-1-1.html 上篇帖子: Linux CenOS 6.5 安装 下篇帖子: linux 网卡配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表