Linux文件和目录管理(3.2)

绝对路径和相对路径

  • 绝对路径:路径的写法一定是由根目录 / 写起的,例 /usr/local/mysql。

  • 相对路径:路径的写法不是由根目录 / 写起的,例

    #cd /home
    #cd test

基本命令的运用

  1. cd的运用
  • cd:用于变更用户所在目录。若后面什么都不跟,会直接进入到指定目录下。
    注:cd后面只能是目录名,如跟的是文件名会报错。

#cd /tmp/
#pwd //用于显示当前所在目录
/tmp
#cd
#pwd
/root

  • “.”:表示当前目录, “…”(这里是两个点,显示出错了):表示当前目录的上一级目录。

#cd /usr/local/lib
#pwd
/usr/local/lib
#cd .
#pwd
/usr/local/lib
#cd ..
#pwd
/usr/local

  1. mkdir和rmdir和rm的运用
  • mkdir用于创建目录。格式为mkdir -p 目录名

mkdir -p /tmp/test/123
ls -ld /tmp/test/123//ld可以查看指定目录的属性(如目录的创建时间)

  • rmdir用于删除目录。格式为rmdir 目录名,该命令只能删除目录,不能删除文件,若目录里面有文件,就会报错。

若你要删的目录是/tmp/test而里面还有个123的文件:
#rmdir /tmp/test
rmdir删除'/tmp/test' 失败 :目录非空
你需要这样:#rmdir /tmp/test/123

tip:这个rmdir这能删除空目录,有局限性。

  • rm用于删除目录。可删除非空目录,格式为

#rm -r //删除目录前会询问你是否删除该目录
#rm -f //强制删除,不会询问

  1. cp和mv的运用
  • cp为复制。格式为cp (选项)(来源文件)(目的文件)
    -r:复制一个目录
    -i:安全选项,若遇到已存在的文件,会先询问是否覆盖

#mkdir 123
cp -r 123 456//把123复制成456

。。。。。。。。。。。。。。。。。。。。(分界线)
#cd 123
#ls
#touch 111 //用于创建文件
#touch 222
#cp -i 111 222
cp:是否覆盖 '222? n'
echo 'abc' > 111 //echo用于打印,“>”起写入作用
echo 'def' > 222
#cat 111 222
abc
def

扫描二维码关注公众号,回复: 9611549 查看本文章
  • mv移动。格式为mv (选项) (源文件或目录) (目标文件或目录)
  1. #mv test1.txt test3 //将test1.txt文件移到目录test3中

  2. #mv -t /opt/soft/test/test4/ test1.txt//又将test1移动到test4目录中去

  3. mv -i log1.txt log2.txt//将文件file1改名为file2,如果file2已经存在,则询问是否覆盖

  4. mv dir1 dir2 //移动目录

  1. 查看文档的命令
  • cat -n :查看文件时,把行号也显示到屏幕上
  • cat -A:显示所有内容,包括特殊字符
  • more 文件名:课查看文件的全部内容
  • less:比more的功能多一点,/XX,可查找当前文件相关的字符串
  • head:显示文件前10行
  • tail:显示文件最后10行
  1. 查看Linux文件属性 :ls -l
  2. 更改文件的权限
  • chgrp:命令可以更改文件的所有组。格式为:chgrp (组名) (文件名)
  • chown:可更改文件的所有者。格式为:chown (-R) 账户名 文件名chown (-R) 账户名:组名 文件名

#mkdir dir3
#useradd user1 //创建用户user1
#touch dir3/test3 //再dir3目录下创建test3
#chown user1 dir3
#ls -ld dir3 //die3目录所有者已经由root该为user1
drwxr-xr-x 2user1 root 20 3月 2 11:31 dir3
#ls -l dir3//但dir3目录下的test3文件所有者依旧是root
#chown -R user1:testgroup dir3//把test目录以及该目录下的文件都修改成所有者为user1,所有组为testgroup
#ls -l test
-rw-r--r-- 1 user1 testgroup 0 3月 2 11:31 test3

  • chmod:用于改变用户对文件/目录的读写权限,格式为chmod -R xyz(代表数字) 文件名

相关规则:
1.字母方式
u:所有者
o:其他人
a:所有人
g:与所有者同组用户
2.数字方式
r: 4
w:2
x:1
0:无权限
1:–x
2:-w-
3:-wx
4:r—
5:r-x
6: rw-
7:rwx
所有者:r+w+x=4+2+1=7
同组用户:r+x=4+1=5其他人:r=4

  • umask:用于改变文件的默认权限。格式为:umask xxx(xxx为数字)
  • chattr:用于修改权限,格式:chattr (+_=)(Asaci)

1.操作符号
+:添加权限(相对)
-:删除权限(相对)
=:设置权限 (绝对)
2.Asaci
A:+后表示文件或目录的atime不可修改
s:+后,会将数据同步写进磁盘
a:+后,表示只能追加不能删除,非root用户不能设定
c:+后,表示自动压缩该文件,读取时会自动解压
i:+后,表示文件不能删除、重命名、设定链接、写入以及新增数据

  • lsattr:用于读取文件或目录的特殊权限,格式为:lsattr (-aR) (文件/目录名)

-a:连同隐藏文件一同列出
-R:连同目录的数据一同列出

7.在Linux下搜索文件

  • which:查找vi和cat的绝对路径,格式为which vi(cat)
  • whereis:预先生成一个文件列表库查找与给出的文件名相关的文件,格式为whereis (-bms) (文件名称)

-b:只查找二进制的文件
-m:只查找帮助文件(在man目录下的文件)
-s:只查找源代码文件

  • find:搜索工具。格式为find (路径) (参数)

-atime +n/-n:表示访问的时间大于或小于n天的文件
-ctime +n/-n:表示写入、更改inode属性的时间大于或小于n天的文件
-mtime +n/-n:表示写入的时间大于或小于n天的文件

8.Linux常见文件类型

  • 普通文件(regular file):ls -l查看目录时第一个属性“_”的文件
  • 目录
  • 链接文件
  • 设备
发布了2 篇原创文章 · 获赞 8 · 访问量 79

猜你喜欢

转载自blog.csdn.net/Wings_V/article/details/104643698