linux 文件操作
目录操作
一、显示和切换目录
ls: 显示目录或文件列表。
ls: 列出当前目录的内容。
ls -l: 以长格式列出当前目录的内容,显示详细信息,如权限、所有者、大小等。
ls -a: 列出当前目录的所有内容,包括以"."开头的隐藏文件。
cd: 切换目录。
cd /path/to/directory: 进入指定路径的目录。
cd ..: 进入上一级目录。
pwd: 显示当前工作目录的路径。
二、创建文件和目录
mkdir: 创建目录。
mkdir directory_name: 创建名为directory_name的目录。
touch file_name: 创建名为file_name的空文件。
touch -a file_name: 更新文件的访问时间戳。
touch -m file_name: 更新文件的修改时间戳。
创建文件时使用vi和vim文件编辑器。
vi 编辑器基本操作:
1,vi编辑器有阅读模式,编辑模式和命令行模式。
阅读模式下键盘按键起功能作用既:h,j,k,l分别是上下左右。这是vi打开的默认模式。三种模式的相互切换分别是
阅读模式下按键“:” 键进入命令行; 按“i”进入编辑
编辑模式和命令行模式下,按“esc”进入阅读模式
2,创建文件需要进入vi或vim的命令行模式,输入w 加要保存的目录完成文件存储。没有加目录就是将文件存在执行命令的位置。
vi+文件名,在退出的时候保存到指定目录也可以创建文件
3,文件查看
cat: 在终端上显示文件内容。
cat file_name: 将file_name的内容输出到终端。
head 和 tail: 分别查看文件的前几行和最后几行。
head -n num_lines file_name: 显示文件的前num_lines行。
tail -n num_lines file_name: 显示文件的最后num_lines行。
三、删除文件及目录
rm: 删除文件或目录。
rm file_name: 删除名为file_name的文件。
rm -r directory_name: 删除名为directory_name的目录及其内容。需要注意该操作是不可恢复的,慎用。
rm -rf 目录名字 递归删除目录下所有文件,强制删除不可恢复,小心使用
四、文件复制和上传下载
cp: 复制、移动文件或目录。
cp source_file destination: 将source_file复制到目标位置destination。
cp -r source_dir destination: 复制source_dir目录及其内容到目标位置destination。
mv: 移动文件或目录,也用于重命名文件或目录。
mv file_name destination: 将file_name移动到指定位置destination。
mv old_name new_name: 将文件或目录old_name重命名为new_name。
touch: 创建空文件或更新文件的访问和修改时间戳。
六、文件权限操作
修改文件权限
r
(读取):允许读取文件的内容、查看目录中的文件列表。
w
(写入):允许修改文件的内容、创建、删除或重命名目录中的文件。
x
(执行):允许以可执行文件的形式运行文件或进入目录。
权限可以用字母也可以用数值代替
读取r
:4 写入 w
:2 执行 x
:1 这些数值相加 可以得到文件的权限 rwx
:4+2+1=7(完全权限) rw-
:4+2=6(读写权限) r--
:4(只读权限)
使用chmod 可以修改权限
chmod 755 file.txt:将file.txt文件的权限设置为rwxr-xr-x(所有者具有读、写和执行权限,组和其他用户具有读和执行权限)。
chmod 644 file.txt:将file.txt文件的权限设置为rw-r--r--(所有者具有读和写权限,组和其他用户只有读权限)。
chmod 700 directory:将directory目录的权限设置为rwx------(仅所有者具有读、写和执行权限)。
chmod u+r file.txt 将file.txt
文件的权限添加了读取权限(r)给所有者(u)。
chmod g-w file.txt 从file.txt
文件的权限中移除了写入权限(w)给组(g)。
chmod g-w file.txt 从file.txt
文件的权限中移除了写入权限(w)给组(g)。
chmod o+x directory 给directory
目录添加了执行权限(x)给其他用户(o)。
符号形式还支持逻辑运算符,可以同时进行多个权限的修改。
chmod u=rw,g+r,o-rwx file.txt 设置file.txt文件的权限为:所有者(u)具有读写权限,组(g)具有读权限,其他用户(o)没有任何权限。
chmod u+w,g+x,o=rw directory设置directory目录的权限为:所有者(u)具有写权限,组(g)具有执行权限,其他用户(o)具有读写权限。
修改所有者
chgrp 用户名 文件名 -R
chown 用户名 文件名 -R
-R表示递归目录下所有文件
以上部分已验证
一、修改文件所属组群——chgrp
修改文件所属组群很简单-chgrp命令,就是change group的缩写(我们可以利用这些来记忆命令)
语法:chgrp 组群 文件名/目录
举例:
[root@redhat ~]# groupadd groupa
[root@redhat ~]# groupadd groupb
[root@redhat ~]# useradd -g groupa zgz
[root@redhat ~]# su - zgz
[zgz@redhat ~]$ touch filea
[zgz@redhat ~]$ touch fileb
[zgz@redhat ~]$ ls -l
total 8
-rw-r--r-- 1 zgz groupa 0 Sep 26 05:48 filea
-rw-r--r-- 1 zgz groupa 0 Sep 26 05:50 fileb
--
[root@redhat zgz]# chgrp groupb filea --改变filea所属群组
[root@redhat zgz]# ls -l
total 8
-rw-r--r-- 1 zgz groupb 0 Sep 26 05:48 filea
-rw-r--r-- 1 zgz groupa 0 Sep 26 05:50 fileb
二、修改文件拥有者——chown
修改组群的命令使chgrp,即change group,那么修改文件拥有者的命令自然就是chown,即change owner。chown功能很多,不仅仅能更改文件拥有者,还可以修改文件所属组群。如果需要将某一目录下的所有文件都改变其拥有者,可以使用-R参数。
语法如下:
chown [-R] 账号名称 文件/目录
chown [-R] 账号名称:组群 文件/目录
举例:
[root@redhat zgz]# ls -l
total 20
-rw-r--r-- 1 zgz groupb 0 Sep 26 05:48 filea
-rw-r--r-- 1