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

[经验分享] Linux之命令基本格式及文件处理命令

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-7-20 08:49:38 | 显示全部楼层 |阅读模式
一、命令基本格式
1.命令格式:
[root(管理员)@localhost(主机名)~]#(超级用户提示符,普通用户提示符是$) adminis
/root一级目录用pwd print working directory(打印工作目录)查看
/home/user1/二级目录
[iyunv@localhost ~]# cd /usr/local/src/ 切换当前目录
[iyunv@localhost src]#

命令[选项] [参数]  中括号表示可选
注意:个别命令使用时不遵循此歌诗,当有多个选项时,可以写在一起简化选项和完整选项
-a 等于--all
2.查询目录中内容:ls  [选项] [文件或目录]
选项:
      -a  all,显示所有文件,包括隐藏文件,隐藏文件以点"."开头,.bashrc,隐藏是防止误操作
      -l  显示详细信息 longlist长显示
      -d  查看目录属性direct
      -h  人性化显示文件大小human
      -i  显示inode 即i节点
权限:默认10位 - rw- r-- r--
               -文件类型(最主要的三种:-文件 d目录 |软链接文件)
另外四种文件类型:块设备文件,字符设备文件,套接字文件和管道pipe文件
               rw-         r--       r--
               user所有者  g所属组   o其他人
-rw-r--r--. l     root   root   1207 1月  14 18:18  anaconda-ks.cfg
解释:
-rw-r--r--:权限分布
.:点.可能代表ACL权限  
l:引用次数 ,被调用计数
1207:字符大小,一般是字节 # ls -lh:显示字符后单位,方便阅读h,human人性化
第一个root:所有组,主人
第二个root:所属组,用户组
1月14 18:18:最后一次修改的时间

      记忆:r读read,w写write,x执行execute

二、文件处理命令
1.目录处理命令
目录同样是文件,目录用于保存文件
(1).建立目录:mkdir  make directories
    mkdir  -p [目录名]
    -p  递归创建,先创建上级目录,再创建第二级目录

[iyunv@localhost ~]# mkdir -p japan/cangls
[iyunv@localhost ~]# ls
anaconda-ks.cfg bols install.log  install.log.syslog  japan
[iyunv@localhost ~]# cd japan/
[iyunv@localhost japan]# ls
cangls
(2).切换所在目录:cd  change directory切换目录
   简化操作:
    cd ~  进入当前用户的家目录
    cd    进入当前用户的家目录  /Ctrl+L xshell清除屏幕
    cd -进入上次目录
    cd .. 进入上一级目录
    cd .  进入当前目录
[iyunv@localhost japan]# cd /root/
[iyunv@localhost ~]# ls   
[iyunv@localhost cangle]# pwd
/root/japan/cangls
[iyunv@localhost cangls]# cd~
[iyunv@localhost ~]# cd japan/cangls
[iyunv@localhost cangls]# cd
[iyunv@localhost ~]# cd -
/root/japan/cangls
[iyunv@localhost cangls]# cd -
root
[iyunv@localhost ~]# cd ..
[iyunv@localhost /]#  root目录

.相对路径:参照当前所在目录,进行查找
如:[iyunv@imooc ~]# cd ../usr/local/src/
[iyunv@localhost /]# cd
[iyunv@localhost ~]# pwd
/root
[iyunv@localhost ~]#cd ../usr/local/src/ 相对路径发生改变
[iyunv@localhost src]# pwd
/usr/local/src
[iyunv@localhost src]# cd ../usr/local/src/ 路径已经改变,,所以提示错误无法确认到src中的usr目录
-bash : cd: ../usr/local/src/:没有那个文件或目录
[iyunv@localhost src]#

.绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置,更加可靠
如:[iyunv@localhost src]# cd /etc/
[iyunv@localhost src]# cd /etc/
[iyunv@localhost etc]# cd /etc/
[iyunv@localhost etc]# cd /etc/
[iyunv@localhost etc]# cd /etc/
[iyunv@localhost etc]#
命令在任何目录下都可以运行,毕竟是从根目录开始的
如果不记得的目标目录,

[iyunv@localhost src]# cd /(按两下tab)使用tab可以补全命令或者目录

(3).查询所在目录位置:pwd
     .pwd :print working directory打印工作目录,显示当前目录

(4).删除空目录:rmdir
    .rmdir [目录名]:remove empty directories 删除空目录
[iyunv@localhost ~]# ls
anaconda-ks.cfg bols install.log  install.log.syslog  japan
[iyunv@localhost ~]#  rmdir bols/
[iyunv@localhost ~]# ls
anaconda-ks.cfg install.log install.log.syslog  japan
[iyunv@localhost ~]# rmdir japan/
rmdir:删除 "japan/"失败:目录非空
因为japan里面有文件夹cangls,所以非空无法删除

(5).删除文件或目录:rm
     .rm -rf [文件或目录]
     命令英文愿意:remove
选项:
     -r  删除目录,删除目录时不可缺少
     -f  强制
[iyunv@localhost ~]# rm -rf / 删除根目录99%的文件,几乎等于格式化,自杀式命令

(6).复制命令:cp
     cp [选项] [原文件或目录] [目标目录]
     命令英文愿意:copy
选项:
     -r 复制目录
     -p 连带文件属性复制
     -d 若源文件是链接文件,则复制链接属性
     -a 相当于-pdr
[iyunv@localhost ~]# cpanaconda-ks.cfg /tmp/ana(添加这个名字说明复制过去会更改文件名,不填写则复制过去仍是源文件名)
[iyunv@localhost ~]# ls
anaconda-ks.cfg install.log  install.log.syslog japan
[iyunv@localhost ~]# cp japan/ /tmp/ 注意空格一下隔开japan/和/tmp/
cp:略过目录"japan/"  需要添加-r
[iyunv@localhost ~]# cp -r japan/ /tmp/
[iyunv@localhost ~]# ls /tmp/
ana japan yum.log
可以使用ll查看我文件属性和权限分布
[iyunv@localhost ~]# ll 或者写成ls -l
总用量 48
- rw-------. 1 root root 1207  1月  14 20:38 ana
普通复制出来的文件时间新旧文件时间不一致
[iyunv@localhost ~]# cp -pdr
复制出来的文件和源文件属性等全部一致

(7)剪切或改名命令:mv
    mv [原文件或目录][目标目录]
    英文原意:move
剪切不区分文件和目录,不加-r
[iyunv@localhost ~]# mv japan/ /tmp/japan1  不在同一个目录下是剪切
[iyunv@localhost ~]# ls
anaconda-ks.cfg install.log  install.log.syslog
[iyunv@localhost ~]# cd /tmp/
[iyunv@localhost tmp]# ls
ana anaconda-ks.cfg japan japan1 yum.log
改名:
[iyunv@localhost tmp]# mv anaconda-ks.cfg longls 在同一个目录下就变成改名了
[iyunv@localhost tmp]# ls
ana japan japan1 longls yum.log

常用一级目录的作用:
  /根目录
  /bin 命令保存目录(普通用户就可以读取的命令)
根目录/下的bin和sbin,usr目录下的bin和sbin四个目录都是用来保存系统命令的,sbin只有root才能使用,普通用户不行sbin,super bin
  /boot 启动目录,启动相关文件
  /dev 设备配置文件保存目录
  /etc 配置文件保存目录
  /root 超级用户的家目录
  /home 普通用户的家目录
  /lib 系统库保存目录,常用函数库
  /mnt 系统挂载文件,cd-rom挂载光盘,usb挂载U盘
  /media 挂载目录
  /misc 空目录,最后三个是用挂载目录
使用规范,约定俗成的目录名
  /proc/直接写入内存
  /sys/
proc和sys目录是不能直接操作的,用来保存内存的过载点
不能用来存放数据,首先内存不能永久保存,而且存放会使系统变慢
  /var 系统相关文档的内容
  /tmp 存放临时文件
总结:可以在家目录root或home,以及tmp目录下随便放内容
      根目录只存放必要的文件

(8).链接命令:ln
      ln -s [原文件][目标文件]
      命令英文原意:link
      功能描述:生成链接文件
      选项: -s 创建软链接 soft
.硬链接特征:
1、拥有相同的i节点和存储block块(一般4KB一个block),可以看做是同一个文件
相当于一个存储文件的不同的获取入口,镜像一样存储double份
2、可以通过i节点识别
3、不能跨分区
4、不能针对目录使用
[iyunv@localhost ~]# ls
anacondalks.cfg cangls install.log  install.log.syslog
[iyunv@localhost ~]# ln /root/anaconda-ks.cfg /tmp/ana.hard
[iyunv@localhost ~]# ll
总用量 44
-w--------. 2 root root 1207  1月  14 18:18 anaconda-ks.cfg
...
[iyunv@localhost ~]# ll /tmp/
总用量 12
-w--------. 2 root root 1207  1月  14 18:18 ana.hard,引用计数都加1
通过任意方式打开修改后,通过另外一个仍可以查看文件,权限一致,其实就是同一个文件
缺陷:不能跨分区,不能针对目录

.软链接特征:
1、类似windows快捷方式,方便打开
2、软链接拥有自己的i节点和block块,但是数据块中保存原文件的文件名和i节点号,并没有实际的文件数据,是原文件的i节点和block块
3、lrwxrwxrwx |软链接
       软链接文件权限都为rwxrwxrwx,查看软链接文件的权限,区别于原文件
4、修改任意文件,另一个都改变
5、删除原文件,软链接不能使用
限制少,而且灵活

[iyunv@localhost ~]# ls
anacondalks.cfg cangls install.log  install.log.syslog
[iyunv@localhost ~]# ln -s /root/anaconda-ks.cfg /tmp/cangls.soft
[iyunv@localhost ~]# ln /root/cangls /tmp/cangls.hard
[iyunv@localhost ~]# ll
总用量 40
-rw-r--r--. 2 root root 1207  1月  14 22:00 cangls
...

[iyunv@localhost ~]# ll -i
262419 -rw-r--r--. 2 root root  0  1月  14 22:00 cangls
262147 -rw-r--r--. 1 root root 24772 1月 14 18:17 install.log
...
[iyunv@localhost ~]# ll -i /tmp/
262418 -rw--------. 1 root root 1216 1月 14 22:36  ana.hard
932110 -rw-r--r---. 1 root root  0  1月  14 22:00 cangls
262419 -rw-r--r--. 2 root root  0  1月  14 22:00 cangls.hard
932061 lrwxrwxrwx. 1 root root  12  1月 14 22:46 cangls.soft -> /root/cangls
其中rwx是指访问软链接的权限,不是原文件的权限,主要分析inode,权限变化,引用计数
...
使用[iyunv@localhost ~]#  cat /tmp/cangls.hard
    [iyunv@localhost ~]#  cat /tmp/cangls.soft
查看文件
做软链接需要使用绝对目标,否则会难以查找,或者在同一目录下修改




运维网声明 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-88415-1-1.html 上篇帖子: kickstart无人值守安装Linux 下篇帖子: linux 磁盘管理+lvm逻辑卷管理 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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