ls 命令 显示当前目录
ls:显示当前目录 -a:显示隐藏目录 -l:以列表形式显示目录 -h:搭配-l使用(例如-lh),显示文件的大小单位
命令可以组合使用,例如ls -alh
cd 命令 切换目录
cd:Change Directory 改变目录(切换目录) cd如果没有参数表示切换到当前用户的home目录下 如果cd后面有路径则切换到指定目录下
特殊路径符
- . 表示当前目录,比如
cd ./Desktop表示切换到当前目录下的 Desktop 目录内,和cd Desktop效果一致 - .. 表示上一级目录,比如
cd ..即可切换到上一级目录,cd ../..表示切换到上二级目录 - ~ 表示 HOME 目录,比如
cd ~即可切换到 HOME 目录,cd ~/Desktop是切换到 HOME 内的 Desktop 目录
pwd 命令 输出当前工作目录
pwd:print work directory 输出当前工作目录
[songtailin@localhost ~]$ pwd
/home/songtailin
[songtailin@localhost ~]$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
[songtailin@localhost ~]$ cd Desktop
[songtailin@localhost Desktop]$ pwd
/home/songtailin/Desktop
mkdir 命令 新建目录
mkdir:Make Directory 新建目录 语法:mkdir [ -p ] Linux 路径 参数-p 可选
[songtailin@localhost ~]$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
[songtailin@localhost ~]$ mkdir stl
[songtailin@localhost ~]$ ls
Desktop Documents Downloads Music Pictures Public stl Templates Videos
[songtailin@localhost ~]$ mkdir /home/songtailin/test
[songtailin@localhost ~]$ ls
Desktop Documents Downloads Music Pictures Public stl Templates test Videos
[songtailin@localhost ~]$ mkdir ./test1
[songtailin@localhost ~]$ ls
Desktop Documents Downloads Music Pictures Public stl Templates test test1 Videos
-p: 一次性创建多个目录
[songtailin@localhost ~]$ mkdir -p it/good/666
[songtailin@localhost ~]$ cd it/good/666
[songtailin@localhost 666]$ pwd
/home/songtailin/it/good/666
注意
创建文件夹需要修改权限,请确保操作均在 HOME 目录内,不要在 HOME 外操作涉及到权限问题,HOME 外无法成功。后续会学习权限管控的知识。
touch 命令 创建文件
touch:创建文件 语法:touch Linux路径
- touch 命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可使用
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl Templates test test1 Videos
[songtailin@localhost ~]$ touch test.txt
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl Templates test test1 test.txt Videos
cat 命令 查看文件内容
cat:查看文件内容 语法:cat Linux命令
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl Templates test test1 test.txt Videos
[songtailin@localhost ~]$ cat test.txt
Hello world!
more 命令 查看文件内容(可以翻页)
- 在查看的过程中通过空格翻页
- 通过 q 退出查看
cp 命令 复制文件或者文件夹
cp:copy,复制文件或文件夹 语法:cp [-r] 参数 1 参数 2
- -r 可选,用于复制文件夹,表示递归
- 参数 1:Linux 路径,表示要被复制的文件或文件夹
- 参数 2:Linux 路径,表示要复制去的地方
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl Templates test test1 test.txt Videos
[songtailin@localhost ~]$ cp test.txt test1.txt
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl Templates test test1 test1.txt test.txt Videos
[songtailin@localhost ~]$ cat test.txt
Hello world!
[songtailin@localhost ~]$ cat test1.txt
Hello world!
[songtailin@localhost ~]$ cp stl stl1
cp: 略过目录"stl"
[songtailin@localhost ~]$ cp -r stl stl1
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test test1 test1.txt test.txt Videos
mv 命令 移动文件或文件夹
语法:mv 参数 1 参数 2
- 参数 1:Linux 路径,表示被移动的文件或文件夹
- 参数 2:Linux 路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test test1 test1.txt test.txt Videos
[songtailin@localhost ~]$ mv test1.txt Desktop/
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test test1 test.txt Videos
[songtailin@localhost ~]$ ls Desktop
test1.txt
rm 命令 删除文件或文件夹
rm:remove ,可用于删除文件或文件夹 语法:rm [-r -f] 参数 1 参数 2 ...... 参数 N
- 同 cp 命令一样,-r 选项用于删除文件夹
- -f 表示 force,强制删除(不会弹出提示确认信息) 普通用户删除内容不会弹出提示,只有 root 用户删除内容会有提示 所以一般用户用不到 -f 选项
- 参数 1、参数 2 ...... 参数 N 表示要删除的文件或文件夹路径,中间用空格隔开
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test test1 test.txt Videos
[songtailin@localhost ~]$ rm test test1
rm: 无法删除"test": 是一个目录
rm: 无法删除"test1": 是一个目录
[songtailin@localhost ~]$ rm -r test test1
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test.txt Videos
rm 命令支持通配符 * ,用来做模糊匹配
- 符号 * 代表通配符,即匹配任意内容(包括空),示例:
- test*,表示匹配任何以 test 开头的内容
- *test,表示匹配任何以 test 为结尾的内容
- *test*,表示匹配任何包含 test 的内容
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public stl stl1 Templates test.txt Videos
[songtailin@localhost ~]$ rm -r stl*
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public Templates test.txt Videos
which 命令 查找命令的程序的位置
语法:which 要查找的命令
[songtailin@localhost ~]$ which cd
/usr/bin/cd
find 命令 查找文件
find 命令支持使用通配符*来做模糊查询
find - 按文件名查找文件
语法:find 起始路径 -name "被查找的文件名"
[songtailin@localhost ~]$ find /home -name *test*
/home/songtailin/test.txt
find - 按文件大小查找文件
语法:find 起始路径 -size +|-n[kMG]
- +、-表示大于和小于
- n 表示大小数字
- kMG 表示大小单位,k(小写字母)表示 kb,M 表示 MB,G 表示 GB 示例: 查找小于 10 KB 的文件:find / -size -10k 查找大于 100 MB 的文件:find / -size +100M 查找大于 1 GB 的文件:find / -size +1G
grep 命令 从文件中通过关键字过滤文件行
语法:grep [-n] 关键字 文件路径
- 选项-n 可选,表示在结果中显示匹配的行号。
- 参数,关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用" "将关键包起来
- 参数,文件路径,必填,表示要过滤的内容的文件路径,可作为内容输入端口
wc 命令做数量统计
可以通过 wc 命令统计文件的行数、单词数量等 语法:wc [-c -m -l -w] 文件路径
- 选项-c,统计 bytes 数量
- 选项-m,统计字符数量
- 选项-l,统计行数
- 选项-w,统计单词数量
- 参数,文件路径,被统计的文件,可作为内容输入端口
管道符
管道符:| 含义:将管道符左边命令的结果作为右边命令的输入
[songtailin@localhost ~]$ ls -l /usr/bin | grep gtf
-rwxr-xr-x. 1 root root 15568 3月 31 2020 gtf
[songtailin@localhost ~]$ ls -l /usr/bin | wc -l
1743
//表示bin目录下有1743个文件
echo 命令 在命令行内输出指定内容
语法: echo "输出的内容"
- 无需选项,只有一个参数,表示要输出的内容
[songtailin@localhost ~]$ echo "Hello Linux"
Hello Linux
反引号 `
被 `包围的内容会被当做命令去执行
[songtailin@localhost ~]$ echo pwd
pwd
[songtailin@localhost ~]$ echo `pwd`
/home/songtailin
重定向符
重定向符:>和>>
-
将左侧命令的结果,覆盖写入到右侧指定文件中
-
将左侧命令的结果,追加写入到右侧指定文件中
[songtailin@localhost ~]$ ls
Desktop Documents Downloads it Music Pictures Public Templates test.txt Videos
[songtailin@localhost ~]$ echo "hello Linux" > test.txt
[songtailin@localhost ~]$ cat test.txt
hello Linux
[songtailin@localhost ~]$ echo "im Linux" >> test.txt
[songtailin@localhost ~]$ cat test.txt
hello Linux
im Linux
[songtailin@localhost ~]$ ls > test.txt
[songtailin@localhost ~]$ cat test.txt
Desktop
Documents
Downloads
it
Music
Pictures
Public
Templates
test.txt
Videos
tail 命令 查看文件尾部内容
语法:tail [-f -num] Linux路径
- 参数,Linux 路径,表示被跟踪的文件路径
- 选项,-f,表示持续跟踪(ctrl+c 退出)
- 选项,-num,表示查看尾部多少行,不填默认 10 行
su 和 exit 命令
su: 账户切换,其来源英文单词: Switch User 语法: su [-] [用户名]
- -符号是可选的,表示是否在切换用户后加载环境变量 (后续讲解)建议带上
- 参数: 用户名,表示要切换的用户,用户名也可以省略, 省略表示切换到 root
- 切换用户后, 可以通过 exit 命令退回上一个用户, 也可以使用快捷键: ctrl + d
- 使用普通用户,切换到其它用户需要输入密码,如切换到 root 用户
- 使用 root 用户切换到其它用户,无需密码,可以直接切换
Linux 用户管理模式
- Linux 可以支持多用户、多用户组、用户加入多个组
- Linux 权限管控单元是用户级别和用户组级别
用户、用户组相关管理命令
- groupadd 添加组、groupdel 删除组
- useradd 添加用户、userdel 删除用户
- usermod 修改用户组、id 命令查看用户信息
- getent passwd 查看系统全部用户信息
- getent group 查看系统全部组信息
rwx
- r 表示读权限
- w 表示写权限
- x 表示执行权限 针对文件、文件夹的不同,rwx 有细微差别
- r 针对文件表示可以查看文件内容
- 针对文件夹,可以查看文件夹内容,如 ls 命令
- w 针对文件表示可以修改此文件
- 针对文件夹,可以在文件夹内执行:创建、删除、改名等操作
- x 针对文件夹表示可以将文件作为程序执行
- 针对文件夹,表示可以更改工作目录到此文件夹,即 cd 进入