linux操作中,文件和目录的管理操作是最常见最基本的操作,也是使用频次很高的命令。
touch命令
创建文件/更新文件时间
在当前目录下创建一个名为 file1.text的文件
touch file1.text

更新刚才创建的file1.text的文件时间
touch file1.text

----两张图中对比发现,时间变了,文件的内容不会改变
mkdir命令
创建目录(文件夹)
mkdir dir1

一次创建多级目录
mkdir -p dir1/dir2/dir3/dir4

创建时若第一级目录dir1已存在,则会在已创建的dir1内创建dir2/dir3...
若dir1不存在,则一起创建dir1、dir2...
rm命令
删除命令
删除文件: rm filename
删除目录: rm -r dirname
强制删除目录:rm -rf dirname



mv命令
移动文件/重命名文件或目录
将file1.text 移入dir1的目录
rm file1.text dir/

重命名
rm file1.text file2.text.bak

rm命令其实就是移动并重新命名
cp命令
复制命令
将file1.text复制到dir1的目录下面
cp file1.text dir1/

将dir1目录复制到当前目录下并命名为dir2
cp -r dir1 dir2

pwd命令
查看当前的路径(层级目录,在哪个路径下面)
pwd

cd命令
切换目录
切换至根目录 cd /
切换至家目录 cd ~或者 cd
切换至上一层目录 cd ..
切换至上上层目录 cd ../..
当前目录 cd .
切换上一次的目录 cd -
//家目录
cd
cd ~
//根目录
cd /
//上一级目录
cd /
//上两级目录
cd ../..
//上一次的目录
cd -

ls命令
查看路径下的内容
ls 平铺显示
ls -a 显示全部内容,包括隐藏
ls -l 列表显示
ls-lh 列表显示+人性化单位显示

tree命令
以树状的结构显示
tree 显示当前目录的树状
tree dir1 显示目录dir1的树状
文件信息

以drwxr-xr-x 3 liuhui staff 96B 2 16 12:54 dir1 为例
d:目录文件 (-普通文件)
rwx:用户拥有的权限(r可读 w可写 x可执行)
r-x:同组用户拥有的权限( 可读可执行)
第二个r-x:其他用户的权限(可读可执行)
3:文件的链接数
liuhui:用户
staff:用户组
96b:文件大小
2 16 12:54 文件创建的日期
dir1 文件名
chown命令
更改文件的用户
sudo chown lh file1.text 更改文件的用户为lh
sudo chown lhown:lhgrp file1.text 更改文件的用户为lhown,同时更改文件的所属组为lhgrp
chgrp命令
更改文件的所属组
sudo chgrp lhgrp file1.text 更改文件的所属组为lhgrp
sudo chgrp lhgrp dir1 只更改dir1的所属组为lhgrp,下级的文件及文件夹不变
sudo chgrp -R lhgrp dir1 更改dir1的文件包括下级文件的所属组为lhgrp
chmod命令
更改文件的权限
文件的权限共有三个:用户、用户所属组、其他用户
每一个权限以4位来表示
8 4 2 1
(读权限) (写权限) (执行权限)
rwx: 0111
r-x: 0101
r--: 0100
同时修改设置三个权限
chmod 777 file1.text 将文件的三个权限全部改为可读可写可执行
chmod 755 file1.text 将文件的三个权限全部改为 用户-可读可写可执行,组和其他用户-可读可执行
u :user
g:group
o:others
a:all
+:增加权限
-:去除权限
+:设置权限
r:读权限
w:写权限
x:执行权限
可单个修改也可一起设置
sudo chmod u-x file1.text 去除文件的用户执行权限
sudo chmod a-wx file1.text 去除文件的用户/所属组/其他用户的写权限和执行权限
sudo chmod go+w file1.text 增加所属组和其他用户的写权限
sudo chmod ug=rwx file1.text 设置用户/用户所属组其他用户的文件权限:可读可写可执行
网友评论