【Linux学习】—文件权限和目录配置

文件管理与常用命令

一、文件权限的概念

1. ls 命令

su root
ls -al  显示文件的详细信息 (包括隐藏文件)
ls -l 显示文件的详细信息 如下图
查看ls更加详细的信息
ls --help 
man ls
info ls 

image-20201031135629991

  • 连接点

  • 如果文件名之前多一个“ . ”,则代表这个文件为“隐藏 文件”

    image-20201031140329585

image-20201031140135600

ls -g 命令查看详细信息,但是不列出所有者

[root@localhost ~]# ls -g
总用量 8
-rw-------. 1 root 1406 10月 26 20:01 anaconda-ks.cfg
-rw-r--r--. 1 root 1516 10月 26 20:03 initial-setup-ks.cfg
ls -R 命令
[root@localhost ~]# ls -R
.:
anaconda-ks.cfg  initial-setup-ks.cfg

2. 改变文件属性和权限

chgrp :改变文件所属群组

chown :改变文件拥有者

chmod :改变文件的权限, SUID, SGID, SBIT等等的特性

文件与 目录基本操作

一、显示文件内容命令

1.cat命令

三大功能

  1. 一次显示整个文件
  2. 从键盘创建一个文件
  3. 文件合并
touch readme.txt
cat readme.txt 
pailanglee@pailanglee-virtual-machine:~$ ls
公共的  模板  视频  图片  文档  下载  音乐  桌面  snap
pailanglee@pailanglee-virtual-machine:~$ cd 文档
pailanglee@pailanglee-virtual-machine:~/文档$ touch readme.txt
pailanglee@pailanglee-virtual-machine:~/文档$ cat readme.txt
pailanglee@pailanglee-virtual-machine:~/文档$ cat readme.txt 
你好
这里是linux

可以看出 cat > readme.txt 输入是会覆盖之前的内容的

pailanglee@pailanglee-virtual-machine:~/文档$ cat > readme.txt 
岔岔查看命令是cat, 还有touch创建文件 。结束
pailanglee@pailanglee-virtual-machine:~/文档$ cat readme.txt 
查看命令是还有touch创建文。结束
pailanglee@pailanglee-virtual-machine:~/文档$ cat -A readme.txt 
M-fM-^_M-%M-gM-^\M-^KM-eM-^QM-=M-dM-;M-$M-fM-^XM-/M-hM-?M-^XM-fM-^\M-^ItouchM-eM-^HM-^[M-eM-;M-:M-fM-^VM-^GM-cM-^@M-^BM-gM-;M-^SM-fM-^]M-^_$
pailanglee@pailanglee-virtual-machine:~/文档$ cat >readme.txt 
input end command is ctrl+d
pailanglee@pailanglee-virtual-machine:~/文档$ cat readme.txt 
input end command is ctrl+d
pailanglee@pailanglee-virtual-machine:~/文档$

cat命令用于文件的合并

pailanglee@pailanglee-virtual-machine:~/文档$ cat >file1
this is file1
pailanglee@pailanglee-virtual-machine:~/文档$ cat > file2
this is file2
pailanglee@pailanglee-virtual-machine:~/文档$ cat file1 file2 >file3
pailanglee@pailanglee-virtual-machine:~/文档$ cat file3
this is file1
this is file2
pailanglee@pailanglee-virtual-machine:~/文档$ 

2.more命令

image-20201031213535631

3.less命令

image-20201031213827543

4.tail/head命令

image-20201031213933425

root@pailanglee-virtual-machine:/home/pailanglee#  tail -10 /etc/profile
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
root@pailanglee-virtual-machine:/home/pailanglee# head -10 /etc/profile
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi

创建空文件的命令

创建file1空文件

touch file1 

image-20201031215022915

pailanglee@pailanglee-virtual-machine:/home$ cd /home/pailanglee
pailanglee@pailanglee-virtual-machine:~$ cd /home
pailanglee@pailanglee-virtual-machine:/home$  cd ~
pailanglee@pailanglee-virtual-machine:~$ cd ~
pailanglee@pailanglee-virtual-machine:~$ ls
公共的  模板  视频  图片  文档  下载  音乐  桌面  snap
pailanglee@pailanglee-virtual-machine:~$ cd ~/文档
pailanglee@pailanglee-virtual-machine:~/文档$ touch test.c
pailanglee@pailanglee-virtual-machine:~/文档$ cat > test.c
#include<iostream>
using namespace std;

int main(){
    cout<<"hello world"<<endl;
    return 0;
}pailanglee@pailanglee-virtual-machine:~/文档$ cat test.c
#include<iostream>
using namespace std;

int main(){
    cout<<"hello world"<<endl;
    return 0;
}pailanglee@pailanglee-virtual-machine:~/文档$ cat >> test.c 

pailanglee@pailanglee-virtual-machine:~/文档$ cat 
file1       file2       file3       readme.txt  test.c      
pailanglee@pailanglee-virtual-machine:~/文档$ cat test.c 
#include<iostream>
using namespace std;

int main(){
    cout<<"hello world"<<endl;
    return 0;
}

文件基础知识

一、文件类型

普通文件

目录文件

链接文件

硬链接文件:

保留索引节点(物理位置)信息

符号链接文件

只有记录所链接文件的路径

设备文件

存储IO设备信息

存储在/dev文件下

管道文件

不同进程间的信息传递

image-20201031221438906

文件基本知识

image-20201031210451830

image-20201031210511061

文件操作命令

文件内容查询命令

1.grep命令

root@pailanglee-virtual-machine:/home/pailanglee# more /home/pailanglee/文档/test.c
#include<iostream>
using namespace std;

int main(){
    cout<<"hello world"<<endl;
    return 0;
}
root@pailanglee-virtual-machine:/home/pailanglee# grep -r main /home/pailanglee/文档/test.c
int main(){
root@pailanglee-virtual-machine:/home/pailanglee# grep --help
用法: grep [选项]... 模式 [文件]...
在每个<文件>中查找给定<模式>。
例如:grep -i 'hello world' menu.h main.c
<模式>可以包括多个模式字符串,使用换行符进行分隔。

模式选择与解释:
  -E, --extended-regexp     <模式> 是扩展正则表达式
  -F, --fixed-strings       <模式> 是字符串
  -G, --basic-regexp        <模式> 是基本正则表达式
  -P, --perl-regexp         <模式> 是 Perl 正则表达式
  -e, --regexp=<模式>       用指定的<模式>字符串来进行匹配操作
  -f, --file=<文件>         从给定<文件>中取得<模式>
  -i, --ignore-case         在模式和数据中忽略大小写
      --no-ignore-case      不要忽略大小写(默认)
  -w, --word-regexp         强制<模式>仅完全匹配字词
  -x, --line-regexp         强制<模式>仅完全匹配整行
  -z, --null-data           数据行以一个 0 字节结束,而非换行符

杂项:
  -s, --no-messages         不显示错误信息
  -v, --invert-match        选中不匹配的行
  -V, --version             显示版本信息并退出
      --help                显示此帮助并退出

输出控制:
  -m, --max-count=<次数>    得到给定<次数>次匹配后停止
  -b, --byte-offset         输出的同时打印字节偏移
  -n, --line-number         输出的同时打印行号
      --line-buffered       每行输出后刷新输出缓冲区
  -H, --with-filename       为输出行打印文件名
  -h, --no-filename         输出时不显示文件名前缀
      --label=<标签>        将给定<标签>作为标准输入文件名前缀
  -o, --only-matching       只显示行中非空匹配部分
  -q, --quiet, --silent     不显示所有常规输出
      --binary-files=TYPE   设定二进制文件的 TYPE(类型);
                            TYPE 可以是 'binary'、'text' 或 'without-match'
  -a, --text                等同于 --binary-files=text
  -I                        等同于 --binary-files=without-match
  -d, --directories=ACTION  读取目录的方式;
                            ACTION 可以是`read', `recurse',或`skip'
  -D, --devices=ACTION      读取设备、先入先出队列、套接字的方式;
                            ACTION 可以是`read'或`skip'
  -r, --recursive           等同于--directories=recurse
  -R, --dereference-recursive       同上,但遍历所有符号链接
      --include=GLOB        search only files that match GLOB (a file pattern)
      --exclude=GLOB        skip files that match GLOB
      --exclude-from=FILE   skip files that match any file pattern from FILE
      --exclude-dir=GLOB    skip directories that match GLOB
  -L, --files-without-match  只打印没有匹配上的<文件>的名称
  -l, --files-with-matches  只打印有匹配的<文件>的名称
  -c, --count               只打印每个<文件>中的匹配行数目
  -T, --initial-tab         行首制表符对齐(如有必要)
  -Z, --null                在<文件>名最后打印空字符

文件控制:
  -B, --before-context=NUM  打印文本及其前面NUM 行
  -A, --after-context=NUM   打印文本及其后面NUM 行
  -C, --context=NUM         打印NUM 行输出文本
  -NUM                      等同于 --context=NUM
      --color[=WHEN],
      --colour[=WHEN]       使用标记高亮匹配字串;
                            WHEN 可以是“always”、“never”或“auto”
  -U, --binary              不要清除行尾的 CR 字符(MSDOS/Windows)

若给定<文件>为“-”,则从读取标准输入。  若无<文件>参数,则除非处于
递归工作模式视为从“.”读取之外,一律视为从“-”读取。如果提供了少于
两个<文件>参数,则默认启用 -h 选项。如果有任意行(或者指定了 -L 选项
并有任意文件)被匹配,则退出状态为 0,否则为 1;如果有错误产生,且未指
定 -q 参数,则退出状态为 2。

root@pailanglee-virtual-machine:/home/pailanglee# grep -r update /etc/acpi 
/etc/acpi/events/thinkpad-cmos:action=/usr/sbin/thinkpad-keys --update
root@pailanglee-virtual-machine:/home/pailanglee# 

root@pailanglee-virtual-machine:/home/pailanglee# grep bash /etc/passwd
root:x:0:0:root:/root:/bin/bash
pailanglee:x:1000:1000:pailanglee,,,:/home/pailanglee:/bin/bash
root@pailanglee-virtual-machine:/home/pailanglee# grep user1* /etc/group
users:x:100:
root@pailanglee-virtual-machine:/home/pailanglee# ls -l | grep ^d 


2.find 命令

image-20201101154810413

image-20201101154835004

root@pailanglee-virtual-machine:/home/pailanglee# find /etc -name "fs*"
/etc/brltty/Input/fs
/etc/systemd/system/timers.target.wants/fstrim.timer
/etc/fstab
 
 # 列出当前目录及其子目录下所有一般文件
 find . -type f
 # 查找当前目录中所有大于10kb的文件和目录
 find . -size +10k
 find . -type f -name "*.txt" -a -size +1M
 
 root@pailanglee-virtual-machine:/home/pailanglee# find ./ -type f -size +1M
./图片/wallhaven-lmxmxy.png
./.mozilla/firefox/5ohwclub.default-release/storage/permanent/chrome/idb/3870112724rsegmnoittet-es.sqlite
./.mozilla/firefox/5ohwclub.default-release/favicons.sqlite
./.mozilla/firefox/5ohwclub.default-release/places.sqlite
./.mozilla/firefox/5ohwclub.default-release/gmp-gmpopenh264/1.8.1.1/libgmpopenh264.so
./snap/snap-store/common/.cache/gnome-software/appstream/components.xmlb
./.cache/tracker/meta.db
./.cache/thunderbird/o015q2ky.default-release/startupCache/startupCache.8.little
./.cache/mozilla/firefox/5ohwclub.default-release/cache2/entries/8768E6A7C18A9A774AE2419150E44873702C9B7D
./.cache/mozilla/firefox/5ohwclub.default-release/cache2/entries/CCC395B68BAE8BE3382D6B41192412F7E8003590
./.cache/mozilla/firefox/5ohwclub.default-release/cache2/entries/A2A3E8DD2E046181FC9A4CB5E8403496617BE99D
./.cache/mozilla/firefox/5ohwclub.default-release/cache2/entries/9DDEE8B133323E661AEC0DD9E31B463604AD4135
./.cache/mozilla/firefox/5ohwclub.default-release/startupCache/scriptCache-current.bin
./.cache/mozilla/firefox/5ohwclub.default-release/startupCache/scriptCache-child.bin
./.cache/mozilla/firefox/5ohwclub.default-release/startupCache/scriptCache-child-current.bin
./.cache/mozilla/firefox/5ohwclub.default-release/startupCache/startupCache.8.little
./.cache/mozilla/firefox/5ohwclub.default-release/startupCache/scriptCache.bin
./.cache/mozilla/firefox/5ohwclub.default-release/safebrowsing/google-trackwhite-digest256.vlpset
./.local/share/backgrounds/2020-06-12-16-07-01-wallhaven-lmxmxy.png
./.thunderbird/o015q2ky.default-release/global-messages-db.sqlite


# 查找/etc目录中所有fs开头的文件,并分屏显示这些文件的内容
root@pailanglee-virtual-machine:/home/pailanglee# find /etc/fs* | more 
/etc/fstab

3.sort命令

image-20201101163008798

root@pailanglee-virtual-machine:/home/pailanglee# sort /etc/passwd
_apt:x:105:65534::/nonexistent:/usr/sbin/nologin
avahi-autoipd:x:109:116:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/usr/sbin/nologin
avahi:x:115:121:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
colord:x:121:126:colord colour management daemon,,,:/var/lib/colord:/usr/sbin/nologin
cups-pk-helper:x:113:120:user for cups-pk-helper service,,,:/home/cups-pk-helper:/usr/sbin/nologin
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
dnsmasq:x:112:65534:dnsmasq,,,:/var/lib/misc:/usr/sbin/nologin
games:x:5:60:games:/usr/games:/usr/sbin/nologin
gdm:x:125:130:Gnome Display Manager:/var/lib/gdm3:/bin/false
geoclue:x:122:127::/var/lib/geoclue:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
gnome-initial-setup:x:124:65534::/run/gnome-initial-setup/:/bin/false
hplip:x:119:7:HPLIP system user,,,:/run/hplip:/bin/false
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
kernoops:x:116:65534:Kernel Oops Tracking Daemon,,,:/:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
messagebus:x:103:106::/nonexistent:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
nm-openvpn:x:118:124:NetworkManager OpenVPN,,,:/var/lib/openvpn/chroot:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
pailanglee:x:1000:1000:pailanglee,,,:/home/pailanglee:/bin/bash
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
pulse:x:123:128:PulseAudio daemon,,,:/var/run/pulse:/usr/sbin/nologin
root:x:0:0:root:/root:/bin/bash
rtkit:x:111:117:RealtimeKit,,,:/proc:/usr/sbin/nologin
saned:x:117:123::/var/lib/saned:/usr/sbin/nologin
speech-dispatcher:x:114:29:Speech Dispatcher,,,:/run/speech-dispatcher:/bin/false
sync:x:4:65534:sync:/bin:/bin/sync
syslog:x:104:110::/home/syslog:/usr/sbin/nologin
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
systemd-network:x:100:102:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
systemd-timesync:x:102:104:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
tcpdump:x:108:115::/nonexistent:/usr/sbin/nologin
tss:x:106:111:TPM software stack,,,:/var/lib/tpm:/bin/false
usbmux:x:110:46:usbmux daemon,,,:/var/lib/usbmux:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
uuidd:x:107:114::/run/uuidd:/usr/sbin/nologin
whoopsie:x:120:125::/nonexistent:/bin/false
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

image-20201101164035963

4.uniq 命令

image-20201101164117378

root@pailanglee-virtual-machine:/home/pailanglee/文档# uniq -u f3.txt
asdf
this is a test
Don't worry 
asdf
asde
asdf
root@pailanglee-virtual-machine:/home/pailanglee/文档# uniq -d f3.txt

5.wc命令

image-20201101165247435

root@pailanglee-virtual-machine:/home/pailanglee/文档# cat f3.txt
asdf
this is a test
Don't worry 
asdf
asde
asdf
root@pailanglee-virtual-machine:/home/pailanglee/文档# wc -l f3.txt
6 f3.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# wc -lcw f3.txt
 6 10 48 f3.txt
 
 显示/etc/profile的行数、字数和字节数统计
 wc -lwc /etc/profile
 27  97 581 /etc/profile

文件比较命令

1. diff命令

image-20201101165459730

root@pailanglee-virtual-machine:/home/pailanglee/文档# diff f1.txt f2.txt
2,3c2,3
< this is a test
< Don't worry 
---
> asde
> asdf
\ 文件尾没有换行符

2. comm 命令

image-20201101170206630

复制删除以及移动命令

1.mv 命令

image-20201101184423824

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f1.txt  f2.txt  f3.txt  file1  file2  file3  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# mv f1.txt filex.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  f3.txt  file1  file2  file3  filex.txt  readme.txt  test.c

2.cp命令

image-20201101184500580

root@pailanglee-virtual-machine:/home/pailanglee# cd ./文档
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls 
f1.txt  f3.txt  file1  file2  file3  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# cp f1.txt f2.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# cat f2.txt
asdf
this is a test
Don't worry 
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f1.txt  f2.txt  f3.txt  file1  file2  file3  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# 

3.rm命令

image-20201101185029848

root@pailanglee-virtual-machine:/home/pailanglee/文档# cp filex.txt f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f1.txt  f2.txt  f3.txt  file1  file2  file3  filex.txt  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# 
root@pailanglee-virtual-machine:/home/pailanglee/文档# rm f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  f3.txt  file1  file2  file3  filex.txt  readme.txt  test.c

文件链接命令

1. ln命令

image-20201101185415497

root@pailanglee-virtual-machine:/home/pailanglee/文档# ln -s /etc/passwwd passwd.lnk
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  file1  file3      passwd.lnk  test.c
f3.txt  file2  filex.txt  readme.txt

目录的创建与删除

1.mkdir命令

image-20201101185749625

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  file1  file3      passwd.lnk  test.c
f3.txt  file2  filex.txt  readme.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# mkdir test
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  file1  file3      passwd.lnk  test
f3.txt  file2  filex.txt  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# mkdir pub/www/user1
mkdir: 无法创建目录 “pub/www/user1”: 没有那个文件或目录
root@pailanglee-virtual-machine:/home/pailanglee/文档# mkdir -p pub/www/user1
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  file1  file3      passwd.lnk  readme.txt  test.c
f3.txt  file2  filex.txt  pub         test
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls ./pub
www
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls ./pub/www
user1
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls ./pub/www/user1

2.rmdir 命令

image-20201101190241692

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls ./pub/www/user1
root@pailanglee-virtual-machine:/home/pailanglee/文档# rmdir ./pub/www/dir
rmdir: 删除 './pub/www/dir' 失败: 没有那个文件或目录
root@pailanglee-virtual-machine:/home/pailanglee/文档# rmdir ./pub/www/usr1
rmdir: 删除 './pub/www/usr1' 失败: 没有那个文件或目录
root@pailanglee-virtual-machine:/home/pailanglee/文档# rmdir ./pub/www/user1root@pailanglee-virtual-machine:/home/pailanglee/文档# ls 
f2.txt  file1  file3      passwd.lnk  readme.txt  test.c
f3.txt  file2  filex.txt  pub         test
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls ./pub/www/
root@pailanglee-virtual-machine:/home/pailanglee/文档# 

文件/目录权限

文件访问权限

  1. 访问权限

    • 读写权限
    • 写入权限
    • 执行权限
  2. 用户分类

    • Owner
    • Group
    • Other

    超级用户

  3. 访问权限的表示法

    image-20201101191009796

修改稳文件权限的Shell命令

1.chmod命令

image-20201101191247360

image-20201101191318941

image-20201101191331603

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f2.txt  file1  file3      passwd.lnk  readme.txt  test.c
f3.txt  file2  filex.txt  pub         test
root@pailanglee-virtual-machine:/home/pailanglee/文档# touch f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f1.txt  f3.txt  file2  filex.txt   pub         test
f2.txt  file1   file3  passwd.lnk  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# chmod 650 f1,txt
chmod: 无法访问'f1,txt': 没有那个文件或目录
root@pailanglee-virtual-machine:/home/pailanglee/文档# chmod 650 f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls -al f1.txt
-rw-r-x--- 1 root root 0 11月  1 19:14 f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# chmod a+x f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls -al f1.txt
-rwxr-x--x 1 root root 0 11月  1 19:14 f1.txt

2.chgrp命令

image-20201101192602751

root@pailanglee-virtual-machine:/home/pailanglee/文档# chgrp -R user2 f1.txtchgrp: 无效的组:“user2”
root@pailanglee-virtual-machine:/home/pailanglee/文档# chgrp -R pailanglee f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls -al f1.txt
-rwxr-x--x 1 root pailanglee 0 11月  1 19:14 f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# chgrp -R -v root f1.txt
'f1.txt' 的所属组已从 pailanglee 更改为 root
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls -al f1.txt
-rwxr-x--x 1 root root 0 11月  1 19:14 f1.txt

3.chown命令

image-20201101193050467

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
f1.txt  f3.txt  file2  filex.txt   pub         test
f2.txt  file1   file3  passwd.lnk  readme.txt  test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# chown -v pailanglee f1.txt
'f1.txt' 的所有者已从 root 更改为 pailanglee
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls -al f1.txt
-rwxr-x--x 1 pailanglee root 0 11月  1 19:14 f1.txt

文件默认权限umask掩码

image-20201101193458157

image-20201101193553056

umask 命令

image-20201101193700201

root@pailanglee-virtual-machine:/home/pailanglee/文档# umask
0022

文件/目录的打包和压缩

1. tar命令

image-20201101194255379

image-20201101194326116

image-20201101194607165

root@pailanglee-virtual-machine:/home/pailanglee/文档# tar -cvf etc.tar /etc/*.conf
tar: 从成员名中删除开头的“/”
/etc/adduser.conf
tar: 从硬连接目标中删除开头的“/”
/etc/apg.conf
/etc/appstream.conf
/etc/brltty.conf
/etc/ca-certificates.conf
/etc/debconf.conf
/etc/deluser.conf
/etc/e2scrub.conf
/etc/fprintd.conf
/etc/fuse.conf
/etc/gai.conf
/etc/hdparm.conf
/etc/host.conf
/etc/kernel-img.conf
/etc/kerneloops.conf
/etc/ld.so.conf
/etc/libao.conf
/etc/libaudit.conf
/etc/logrotate.conf
/etc/ltrace.conf
/etc/mke2fs.conf
/etc/mtools.conf
/etc/nsswitch.conf
/etc/pam.conf
/etc/pnm2ppa.conf
/etc/popularity-contest.conf
/etc/resolv.conf
/etc/rsyslog.conf
/etc/rygel.conf
/etc/sensors3.conf
/etc/sysctl.conf
/etc/ucf.conf
/etc/usb_modeswitch.conf
/etc/xattr.conf
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar  f2.txt  file1  file3      passwd.lnk  readme.txt  test.c
f1.txt   f3.txt  file2  filex.txt  pub         test



root@pailanglee-virtual-machine:/home/pailanglee/文档# tar -czvf test.tar.gz test.c
test.c
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar  f3.txt  file3       pub         test.c       z
f1.txt   file1   filex.txt   readme.txt  test.tar.gz
f2.txt   file2   passwd.lnk  test        vz

root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar  f3.txt  file3       pub         test.c       z
f1.txt   file1   filex.txt   readme.txt  test.tar.gz
f2.txt   file2   passwd.lnk  test        vz
root@pailanglee-virtual-machine:/home/pailanglee/文档# tar -xf test.tar.gz
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar  f3.txt  file3       pub         test.c       z
f1.txt   file1   filex.txt   readme.txt  test.tar.gz
f2.txt   file2   passwd.lnk  test        vz

2. gzip命令

会删除原始文件

image-20201101200702259

root@pailanglee-virtual-machine:/home/pailanglee/文档# gzip f1.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar    f3.txt  file3       pub         test.c       z
f1.txt.gz  file1   filex.txt   readme.txt  test.tar.gz
f2.txt     file2   passwd.lnk  test        vz

3.bzip2命令

image-20201101201220274

root@pailanglee-virtual-machine:/home/pailanglee/文档# bzip2 f2.txt
root@pailanglee-virtual-machine:/home/pailanglee/文档# ls
etc.tar     f3.txt  file3       pub         test.c       z
f1.txt.gz   file1   filex.txt   readme.txt  test.tar.gz
f2.txt.bz2  file2   passwd.lnk  test        vz

4. zip命令

image-20201101201857022

5.unzip命令

image-20201101202137384

image-20201101200756001

posted @ 2021-01-31 21:11  派狼  阅读(467)  评论(0编辑  收藏  举报