兄弟连linux系列(一)
参考书籍如上
一、linux 常用命令
1. 命令的基本格式
1. 从超级用户切换到普通用户命令
- su 用户名,命令提示符为$
- su root,切换为超级用户,命令提示符为#
2. pwd 可以显示当前完整路径
3. ls 命令
-
显示当前文件夹下面的全部文件名
-
ls -l 显示详细信息
-
ls -l
点击查看代码
(base) [root@localhost ~]# ls anaconda-ks.cfg initial-setup-ks.cfg (base) [root@localhost ~]# ls -l 总用量 8 -rw-------. 1 root root 1553 11月 19 01:24 anaconda-ks.cfg -rw-r--r--. 1 root root 1844 11月 19 01:27 initial-setup-ks.cfg (base) [root@localhost ~]# ls -l anaconda-ks.cfg -rw-------. 1 root root 1553 11月 19 01:24 anaconda-ks.cfg
2. 目录操作命令
1. ls 命令
- ls -a 显示文件夹下all文件,即隐藏文件也会被显示出来
- ls -l 显示文件夹下文件的详细信息(包括:权限、引用计数、所有者、所属组、文件大小、修改时间、文件名)
-rw-------. 1 root root 1553 11月 19 01:24 anaconda-ks.cfg
- ls -i 显示文件inode号
- ls -d 显示目录本身的信息
(base) [root@localhost ~]# ls -ld
dr-xr-x---. 5 root root 4096 11月 20 23:35
2. cd 命令
内涵:切换目录
-
cd 路径
-
cd ~ 用户家目录
-
cd / 用户根目录
-
cd .. 返回上级目录
-
cd - 返回上次目录点击查看代码
点击查看代码
(base) [root@localhost ~]# cd /usr/local/src/ (base) [root@localhost src]# pwd /usr/local/src (base) [root@localhost src]# cd ~ (base) [root@localhost ~]# (base) [root@localhost ~]# cd /usr/local/src/ (base) [root@localhost src]# cd / (base) [root@localhost /]# (base) [root@localhost ~]# cd /usr/local/ (base) [root@localhost local]# cd - /root (base) [root@localhost ~]#
-
/ 根目录下面有什么?
(包括home、etc、root、usr、opt)点击查看代码
(base) [root@localhost ~]# cd / (base) [root@localhost /]# ls -l 总用量 32 lrwxrwxrwx. 1 root root 7 6月 22 13:06 bin -> usr/bin dr-xr-xr-x. 6 root root 4096 11月 19 01:25 boot drwxr-xr-x. 20 root root 3220 11月 20 13:03 dev drwxr-xr-x. 174 root root 12288 11月 20 23:35 etc drwxr-xr-x. 3 root root 27 11月 20 13:29 home lrwxrwxrwx. 1 root root 7 6月 22 13:06 lib -> usr/lib lrwxrwxrwx. 1 root root 9 6月 22 13:06 lib64 -> usr/lib64 drwxr-xr-x. 2 root root 6 6月 22 13:06 media drwxr-xr-x. 3 root root 18 11月 19 01:12 mnt drwxr-xr-x. 4 root root 38 11月 20 13:07 opt dr-xr-xr-x. 291 root root 0 11月 20 13:03 proc dr-xr-x---. 5 root root 4096 11月 20 23:35 root drwxr-xr-x. 53 root root 1480 11月 20 13:13 run lrwxrwxrwx. 1 root root 8 6月 22 13:06 sbin -> usr/sbin drwxr-xr-x. 2 root root 6 6月 22 13:06 srv dr-xr-xr-x. 13 root root 0 11月 20 13:03 sys drwxrwxrwt. 23 root root 4096 11月 21 01:44 tmp drwxr-xr-x. 13 root root 158 11月 19 01:10 usr drwxr-xr-x. 23 root root 4096 11月 19 01:25 var
3. mkdir命令
-
内涵:创建新的空目录
点击查看代码
(base) [root@localhost ~]# cd / (base) [root@localhost /]# cd home (base) [root@localhost home]# ls f1 lee (base) [root@localhost home]# cd lee (base) [root@localhost lee]# pwd /home/lee (base) [root@localhost lee]# mkdir firstleedir (base) [root@localhost lee]# ls 公共 模板 视频 图片 文档 下载 音乐 桌面 anaconda3 Anaconda3-2019.03-Linux-x86_64.sh firstleedir
-
假如我需要建立a目录下面还有b目录,需要加入参数 -p
点击查看代码
(base) [root@localhost lee]# mkdir -p a/b (base) [root@localhost lee]# ls 公共 视频 文档 音乐 a Anaconda3-2019.03-Linux-x86_64.sh 模板 图片 下载 桌面 anaconda3 firstleedir (base) [root@localhost lee]# cd a (base) [root@localhost a]# ls b (base) [root@localhost a]#
4. rmdir 命令
-
内涵:删除的空目录!!!(不常用)
点击查看代码
(base) [root@localhost lee]# cd a (base) [root@localhost a]# ls b (base) [root@localhost a]# rmdir b (base) [root@localhost a]# ls (base) [root@localhost a]#
5. tree 命令
内涵:显示目录树
点击查看代码
(base) [root@localhost lee]# tree /home/lee/anaconda3/bin
/home/lee/anaconda3/bin
├── 2to3 -> 2to3-3.7
├── 2to3-3.7
├── activate
├── anaconda
├── anaconda-navigator
├── anaconda-project
├── asadmin
├── assistant
├── binstar
├── bokeh
├── bsdcat
...省略
├── xzless
├── xzmore
├── zstd
├── zstdcat -> zstd
└── zstdmt -> zstd
0 directories, 412 files
3. 文件操作命令
1. touch 命令
内涵:建立空文件,若文件已经存在,则修改其时间戳
点击查看代码
(base) [root@localhost firstleedir]# ls
(base) [root@localhost firstleedir]# touch a1
(base) [root@localhost firstleedir]# ls
a1
(base) [root@localhost firstleedir]#
问题:如何区分linux里面的文件和目录?
drwxr-xr-x. 的首字母为d即为目录
首字母为-即为文件
点击查看代码
(base) [root@localhost lee]# cd firstleedir/
(base) [root@localhost firstleedir]# ls
a1
(base) [root@localhost firstleedir]# cd ..
(base) [root@localhost lee]# ls -l
总用量 669840
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 公共
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 模板
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 视频
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 图片
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 文档
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 下载
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 音乐
drwxr-xr-x. 2 lee lee 6 11月 19 01:28 桌面
drwxr-xr-x. 2 root root 6 11月 21 02:07 a
drwxr-xr-x. 26 root root 4096 11月 20 03:54 anaconda3
-rw-r--r--. 1 root root 685906562 4月 5 2019 Anaconda3-2019.03-Linux-x86_64.sh
drwxr-xr-x. 2 root root 16 11月 21 02:27 firstleedir
(base) [root@localhost lee]# ls -ld
drwx------. 18 lee lee 4096 11月 21 02:04 .
(base) [root@localhost lee]# cd -
/home/lee/firstleedir
(base) [root@localhost firstleedir]# ls -l
总用量 4
-rw-r--r--. 1 root root 6 11月 21 02:27 a1
2. stat 命令
内涵:查看文件详细信息
-
stat [文件名] 查看文件信息(包括:文件访问时间、数据修改时间、状态修改时间)
-
stat -f [文件名] 查看文件所在目录的信息
-
如果 cat [文件名]之后再执行 stat [文件名],其最近访问时间发生改变。
-
如果 使用 echo 向文件写入内容,那么数据修改时间会改变,同时状态也改变。
点击查看代码
(base) [root@localhost firstleedir]# touch a1 (base) [root@localhost firstleedir]# ls a1 (base) [root@localhost firstleedir]# stat a1 文件:a1 大小:6 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:22875146 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2021-11-21 10:26:49.076594039 +0800 最近更改:2021-11-21 10:26:49.076594039 +0800 最近改动:2021-11-21 10:26:49.076594039 +0800 创建时间:2021-11-21 02:27:32.519005514 +0800 (base) [root@localhost firstleedir]# stat -f a1 文件:"a1" ID:fd0000000000 文件名长度:255 类型:xfs 块大小:4096 基本块大小:4096 块:总计:4452864 空闲:1077092 可用:1077092 Inodes: 总计:8885152 空闲:8616907 (base) [root@localhost firstleedir]# cat a1 72234 (base) [root@localhost firstleedir]# stat a1 文件:a1 大小:6 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:22875146 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2021-11-21 10:31:00.080086757 +0800 最近更改:2021-11-21 10:26:49.076594039 +0800 最近改动:2021-11-21 10:26:49.076594039 +0800 创建时间:2021-11-21 02:27:32.519005514 +0800 (base) [root@localhost firstleedir]# echo '123'> a1 (base) [root@localhost firstleedir]# stat a1 文件:a1 大小:4 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:22875146 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2021-11-21 10:31:00.080086757 +0800 最近更改:2021-11-21 10:34:21.636944498 +0800 最近改动:2021-11-21 10:34:21.636944498 +0800 创建时间:2021-11-21 02:27:32.519005514 +0800 (base) [root@localhost firstleedir]#
3. cat 命令
内涵:查看文件内容(适合查看不大的文件)
-
cat -n [文件名] 会显示行号
-
cat -A [文件名] 会显示隐藏字符包括回车$,tab键。
点击查看代码
(base) [root@localhost firstleedir]# cd ~ (base) [root@localhost ~]# cat anaconda-ks.cfg #version=RHEL8 # Use graphical install graphical repo --name="AppStream" --baseurl=file:///run/install/sources/mount-0000-cdrom/AppStream %packages @^graphical-server-environment @container-management @debugging @development @dotnet-core @file-server @ftp-server @graphical-admin-tools @guest-agents @headless-management @infiniband @legacy-unix @mail-server @network-file-system-client @network-server @performance @remote-desktop-clients @remote-system-management @rpm-development-tools @scientific @security-tools @smart-card @smb-server @system-tools @virtualization-client @virtualization-hypervisor @virtualization-tools @web-server kexec-tools %end # Keyboard layouts keyboard --xlayouts='cn' # System language lang zh_CN.UTF-8 # Network information network --bootproto=dhcp --device=ens33 --ipv6=auto --activate network --hostname=localhost.localdomain # Use CDROM installation media cdrom # Run the Setup Agent on first boot firstboot --enable ignoredisk --only-use=sda autopart # Partition clearing information clearpart --none --initlabel # System timezone timezone Asia/Shanghai --isUtc # Root password rootpw --iscrypted $6$qXScqN7rREEFmQkj$uM1EB02aIh5QumYgvRdSmdEKBuvA1Elopa7DkdJYv40mYWEJVXHZSVwNtzrkEcKhpBKm/ulIdzh/7H9DyCBGD/ %addon com_redhat_kdump --enable --reserve-mb='auto' %end %anaconda pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty %end (base) [root@localhost ~]#
4. more 命令
内涵:分屏显示文件内容
- 空格键向下翻页
- b 向上翻页
- enter 向下滚动一行
- q 退出
5. less 命令
通过上下键分行查看内容
6. head 命令
内涵:显示文件头部信息
7. tail 命令
内涵:显示文件尾部信息
8. ln 命令
内涵:建立软硬链接
4. 目录和文件都可操作命令
1. rm 命令
- rm -i 在删除之前询问用户(默认)
- rm -r 删除目录
- rm -rf 强制删除,不用输入y
2. cp 命令
内涵:复制文件/文件夹
3. mv 命令
内涵:移动文件
- mv -f 源文件 目标文件 如果存在同名文件,则不询问强制覆盖