【Linux操作系统】Linux——常用的终端命令(一)
安装好Linux操作系统以后,我们接下来开始学习Linux终端的常用命令.
在学习终端命令之前,我们需要先了解一下Linux中的文件和目录.
Linux中的文件和目录
Windows
- windows xp系统之前的版本都是单用户操作系统
- 在windows系统下文件的组成系统:计算机—盘符—各种文件夹
Linux
- Unix和Linux的设计是多用户操作系统
- 在Linux系统下,没有盘符进入了系统目录,只有一个根目录"/",所有文件都在其下面
用户目录
- 位于/home/user,称之为用户工作目录
- /:根目录
- /bin:可执行二进制文件的目录
- /etc:系统配置文件存放的目录
- /home:用户家目录
常用的Linux命令
基础目录命令
ls:查看当前目录信息
参数:
- -l:以列表方式显示
- -h:以大小单位显示,默认是字节,单独-h无意义,必须先用-l
- -a:显示隐藏文件和隐藏目录,在Linux隐藏文件和目录名字之前有个点
xjh@xjh-virtual-machine:~$ ls
公共的 图片 音乐 java_error_in_PYCHARM_10427.log PycharmProjects
模板 文档 桌面 java_error_in_PYCHARM_15521.log snap
视频 下载 ftp java_error_in_PYCHARM_3226.log
xjh@xjh-virtual-machine:~$ ls -l
总用量 208
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 公共的
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 模板
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 视频
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 图片
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 文档
drwxr-xr-x 2 xjh xjh 4096 8月 3 17:08 下载
drwxr-xr-x 2 xjh xjh 4096 7月 31 19:11 音乐
drwxr-xr-x 5 xjh xjh 4096 8月 26 15:44 桌面
drwxrwxr-x 2 xjh xjh 4096 8月 5 20:20 ftp
-rw-rw-r-- 1 xjh xjh 785 8月 1 16:34 java_error_in_PYCHARM_10427.log
-rw-rw-r-- 1 xjh xjh 2448 8月 5 14:12 java_error_in_PYCHARM_15521.log
-rw-rw-r-- 1 xjh xjh 158427 8月 9 10:05 java_error_in_PYCHARM_3226.log
drwxrwxr-x 3 xjh xjh 4096 8月 5 14:27 PycharmProjects
drwxr-xr-x 3 xjh xjh 4096 7月 31 20:08 snap
xjh@xjh-virtual-machine:~$ ls -l -h
总用量 208K
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 公共的
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 模板
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 视频
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 图片
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 文档
drwxr-xr-x 2 xjh xjh 4.0K 8月 3 17:08 下载
drwxr-xr-x 2 xjh xjh 4.0K 7月 31 19:11 音乐
drwxr-xr-x 5 xjh xjh 4.0K 8月 26 15:44 桌面
drwxrwxr-x 2 xjh xjh 4.0K 8月 5 20:20 ftp
-rw-rw-r-- 1 xjh xjh 785 8月 1 16:34 java_error_in_PYCHARM_10427.log
-rw-rw-r-- 1 xjh xjh 2.4K 8月 5 14:12 java_error_in_PYCHARM_15521.log
-rw-rw-r-- 1 xjh xjh 155K 8月 9 10:05 java_error_in_PYCHARM_3226.log
drwxrwxr-x 3 xjh xjh 4.0K 8月 5 14:27 PycharmProjects
drwxr-xr-x 3 xjh xjh 4.0K 7月 31 20:08 snap
xjh@xjh-virtual-machine:~$ ls -a
. .bash_logout .jetbrains
.. .bashrc .local
公共的 .cache .mozilla
模板 .config .pki
视频 ftp .profile
图片 .gnome PycharmProjects
文档 .gnupg snap
下载 .java .sudo_as_admin_successful
音乐 java_error_in_PYCHARM_10427.log .viminfo
桌面 java_error_in_PYCHARM_15521.log .vscode
.bash_history java_error_in_PYCHARM_3226.log
tree:以树状方式显示目录信息
- 之后可以携带参数,这个参数是要查看的当前目录中的一个目录内的信息
xjh@xjh-virtual-machine:~/桌面/linux练习$ tree
.
└── 一
└── 1.txt
1 directory, 1 file
pwd:查看当前目录路径
/home/xjh/桌面/linux练习
clear:清除终端内容
cd 目录:切换到指定目录
xjh@xjh-virtual-machine:~/桌面/linux练习$ cd 一
xjh@xjh-virtual-machine:~/桌面/linux练习/一$
cd ~:切换到当前用户的主目录
xjh@xjh-virtual-machine:~/桌面/linux练习/一$ cd ~
xjh@xjh-virtual-machine:~$
cd …:切换到上一级目录
xjh@xjh-virtual-machine:~/桌面/linux练习/一$ cd ..
xjh@xjh-virtual-machine:~/桌面/linux练习$
cd .:切换到当前目录
cd -:切换到上一次目录
注意:
- 使用cd命令切换目录时,必须要保证这个目录存在;cd后面不写目录等价于cd ~
xjh@xjh-virtual-machine:~/桌面/linux练习/一$ cd -
/home/xjh/桌面/linux练习/一
路径
绝对路径
- 从根目录算起的路径叫做绝对路径
例如:
/home/xjh/桌面/linux练习
相对路径
- 从当前目录算起的路径叫相对路径
例如:
../linux练习
自动补全功能
- 当敲出文件或者目录或者命令的前几个字母之后,按下tab键,如果输入的没有歧义,系统会自动补全
- 当切换目录或者使用命令的时候,如果不确定当前目录下有哪些子目录或者其他命令,可以通过两次tab键查看
常用的文件命令
touch 文件名:创建指定文件名的文件
xjh@xjh-virtual-machine:~/桌面/linux练习$ touch 123
mkdir 目录名:创建目录(文件夹)
xjh@xjh-virtual-machine:~/桌面/linux练习$ mkdir A
参数:
- -p :创建所依赖的文件夹,不管路径是怎样没有的话直接创建
xjh@xjh-virtual-machine:~/桌面/linux练习$ mkdir -p B
rm 文件名或目录名:删除指定文件或者目录
- rm命令删除目录需要加上-r选项,-r表示递归删除目录及内容
参数:
- -i:交互式提示,询问是否删除,Y/N
- -r:递归删除目录及内容
- -f:强制删除、忽略不存在的文件,无需提示
- -d:删除空目录
xjh@xjh-virtual-machine:~/桌面/linux练习$ rm -r B
xjh@xjh-virtual-machine:~/桌面/linux练习$ rm -r -i A
rm:是否删除目录 'A'? y
xjh@xjh-virtual-machine:~/桌面/linux练习$
xjh@xjh-virtual-machine:~/桌面/linux练习$ rm -f A
xjh@xjh-virtual-machine:~/桌面/linux练习$ rm -d B
xjh@xjh-virtual-machine:~/桌面/linux练习$
rmdir 目录名:删除空目录 只能删除空目录,如果目录中有内容使用rm删除
xjh@xjh-virtual-machine:~/桌面/linux练习$ rmdir A
cp 文件名 新文件名:拷贝文件,拷贝目录
- 拷贝目录需要加上-r选项,-r表示递归拷贝目录及内容
参数:
-
-i:交互式提示,拷贝文件时新文件的名称在不明确是否存在的情况下使用,如果被占用则提示是否覆盖,不存在直接复制
-
-r:递归拷贝目录及其内容
-
-v:显示拷贝后的路径描述
-
-a:保留文件的原有权限
xjh@xjh-virtual-machine:~/桌面/linux练习$ cp A -r -i B
xjh@xjh-virtual-machine:~/桌面/linux练习$ cp A -r -i -v B
'A' -> 'B/A'
xjh@xjh-virtual-machine:~/桌面/linux练习$ cp A -r -i -v -a B
mv 文件名 目录名:移动文件至目录
参数:
- -i:交互式提示
- -v:显示移动后的路径描述
xjh@xjh-virtual-machine:~/桌面/linux练习$ mv A -v B
renamed 'A' -> 'B/A'
终端命令格式的组成
终端命令格式
command \[-options][parameter]
-
command:命令名称,比如:ls、pwd
-
[-options]:选项。可以有零个,一个或多个选项、多个选项可以合并,比如使用-r就是选项
-
[parameter]:参数。可以有零个、一个或多个,比如touch 文件名、mkdir目录名
-
[ ]:代表可选参数,有些命令中必须要提供,而有些命令种不需要提供
如何查看命令
-
–help的使用说明:
- 命令 – help 查看该命令的说明
-
man 使用说明:
-
man 命名 直接打开该命令的说明
-
man命令的说明:
- 空格:显示下一屏信息
- 回车:显示下一行信息
- b:显示上一屏信息
- f:显示上一行信息
- q:退出
-
重定向命令
- 重定向也称为输出重定向,把在终端执行命令的结果保存到目标文件
- >:如果文件存在会覆盖原有文件内容,相当于文件操作中的“w”模式
- >>:如果文件存在会追加写入文件末尾,相当于文件操作中的“a”模式
123 B
xjh@xjh-virtual-machine:~/桌面/linux练习$ ls >123
xjh@xjh-virtual-machine:~/桌面/linux练习$ ls -l >>123
查看文件
-
cat:查看小型文件
-
cat命令结合重定向可以完成多个文件的合并
xjh@xjh-virtual-machine:~/桌面/linux练习$ cat 123
123
B
总用量 8
-rw-rw-r-- 1 xjh xjh 6 8月 26 16:36 123
drwxrwxr-x 3 xjh xjh 4096 8月 26 16:34 B
- gedit 文件:编辑命令,可以查看和编辑文件
- more:分屏查看大型文件
链接命令
链接命令时创建链接文件,链接文件分为:硬链接、软链接
软链接
- 类似于windows中的快捷方式,当一个源文件的目录层级比较多,方便的使用文件,可以给该文件创建一个软链接
ln -s 目标文件名 链接名
xjh@xjh-virtual-machine:~/桌面/linux练习$ ln -s B b
- 如果是同一个目录的创建则使用相对路径即可
- 如果将目标文件创建一个其他路径的连接则针对目标文件需要使用绝对路径
xjh@xjh-virtual-machine:~/桌面/linux练习$ ln -s /home/xjh/桌面/linux练习/B /home/xjh/桌面/abc
-
如果删除源文件则软链接直接失效
-
可以给目录创建软链接
硬链接
- 类似于源文件的一个别名,也就是说这两个名字指向的是同一个文件数据
ln 目标文件名 连接名
xjh@xjh-virtual-machine:~/桌面/linux练习$ ln 123 456
- 创建硬链接使用相对路径和绝对路径都可以
- 删除源文件,硬链接文件还可以继续访问到数据
- 创建硬链接,硬链接数会+1.删除源文件或者硬链接,硬链接数会-1
- 创建软链接,硬链接数不会改变
- 不能给目录创建硬链接
- 硬连接数:就是文件数据被文件名使用的次数,好比引用计数