Linux系统命令符01

##重启下虚拟机
[root@bogon ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:c9:78:c4 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.128/24 brd 10.0.0.255 scope global noprefixroute dynamic eth0
valid_lft 1597sec preferred_lft 1597sec
inet6 fe80::1cbf:8d03:8225:3b3f/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@bogon ~]# service network restart
Restarting network (via systemctl): [ OK ]
[root@bogon ~]#
[root@bogon ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:c9:78:c4 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.128/24 brd 10.0.0.255 scope global noprefixroute dynamic eth0
valid_lft 1781sec preferred_lft 1781sec
inet6 fe80::1cbf:8d03:8225:3b3f/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@bogon ~]#

ls --help

认识linux

文件和目录

1、Windows和Linux文件系统的区别

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

用户目录

位于/home/user,称之为用户工作目录或家目录,表示方式:

/home/user
~

相对路径和绝对路径

绝对路径:从/目录开始描述的路径为绝对路径,如:cd/home    ls/usr

相对路径:从当前位置开始描述的路径为相对路径

2、Linux命令概述

ls 显示当前路径下的所有文件及文件夹;

pwd 表示查看当前所在的路径;

cd 跳转路径;cd ..是跳转到上一层文件夹;(..是相对路径)

如何知道是文件还是文件夹

ls -l

[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris_1.tar test
[root@localhost ~]# ls -l
total 16
-rw-r--r--. 1 root root 0 Jul 22 19:17 123_2.py
-rw-r--r--. 2 root root 0 Jul 22 19:18 345link_2.py
-rw-r--r--. 2 root root 0 Jul 22 19:18 345link.py
-rw-------. 1 root root 1304 Jul 21 15:52 anaconda-ks.cfg
-rw-r--r--. 1 root root 10240 Jul 22 21:24 kris_1.tar
drwxr-xr-x. 3 root root 47 Jul 22 21:03 test 如果是以d开头就表示是个文件夹,以-开头的是个文件;也可以根据颜色区分; [root@localhost ~]# cd ..
[root@localhost /]# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
[root@localhost /]# ls -l
total 16
lrwxrwxrwx. 1 root root 7 Jul 21 15:38 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Jul 21 15:52 boot
drwxr-xr-x. 20 root root 3240 Jul 28 19:59 dev
drwxr-xr-x. 85 root root 8192 Jul 28 21:49 etc
drwxr-xr-x. 2 root root 6 Jul 22 18:23 home
lrwxrwxrwx. 1 root root 7 Jul 21 15:38 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Jul 21 15:38 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Apr 11 12:59 media
drwxr-xr-x. 2 root root 6 Apr 11 12:59 mnt
drwxr-xr-x. 2 root root 6 Apr 11 12:59 opt
dr-xr-xr-x. 112 root root 0 Jul 28 19:59 proc
dr-xr-x---. 3 root root 238 Jul 22 21:39 root
drwxr-xr-x. 26 root root 740 Jul 28 22:00 run
lrwxrwxrwx. 1 root root 8 Jul 21 15:38 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Apr 11 12:59 srv
dr-xr-xr-x. 13 root root 0 Jul 28 19:59 sys
drwxrwxrwt. 8 root root 151 Jul 28 21:47 tmp
drwxr-xr-x. 13 root root 155 Jul 21 15:38 usr
drwxr-xr-x. 19 root root 267 Jul 21 16:03 var
[root@localhost /]# pwd
/

Linux系统命令符01

.. 是相对路径

绝对路径要写cd /bin/要加/ /,想跳到哪里都可以。

Linux系统命令符01

自动补全

Linux系统命令符01

在敲出命令的前几个字母的同时,按下tab键,系统会帮我们补全命令

查看帮助文档

<1>--help

一般是linux命令自带的帮助信息,如ls --help

<2>man(有问题找男人,manual)

man是linux提供的一个手册,包含了绝大部分的命令、函数使用说明;该手册分成很多章节(section),使用man时可以指定不同的章节来浏览。

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

历史命令:

当系统执行过一些命令后,可按上下键翻看以前的命令,history将执行过的命令列举出来

3、Linux命令-文件、磁盘管理

Linux系统命令符01

[root@localhost ~]# pwd
/root
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris_1.tar test
[root@localhost ~]# ls ../ 也可以查看相对路径下的文件或文件夹
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
[root@localhost ~]#

创建文件是touch 123.py

ls -a 表示隐藏文件也显示;ls -l 是列表;ls -h 是大小;ls -alh 顺序无所胃

通配符

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

<2>重定向(重新规定它显示的方向)

Linux系统命令符01

Linux系统命令符01

<3>分屏显示more

Linux系统命令符01

<4>管道: |

Linux系统命令符01按空格键就慢慢都显示出来了

Linux系统命令符01

Linux系统命令符01

<6>切换工作目录:cd

Linux系统命令符01     Linux系统命令符01

cd ~ 表示返回到家目录

<7>创建目录:mkdir

Linux系统命令符01

[root@localhost ~]# mkdir kris
[root@localhost ~]# ls
anaconda-ks.cfg kris
[root@localhost ~]# ls -l
total
-rw-------. root root Jul : anaconda-ks.cfg
drwxr-xr-x. root root Jul : kris
[root@localhost ~]#
[root@localhost ~]# cd kris/
[root@localhost kris]# pwd
/root/kris

rmdir只能删除空文件夹

<8>删除目录:rmdir

可使用rmdir命令删除一个目录,必须离开目录,并且目录必须为空,不然提示删除失败。

<9>删除文件:rm

可通过rm删除文件或目录,使用rm命令要小心,因为文件删除后不能恢复。为了防止文件误删,可以在rm后使用-i参数以逐个确认要删除的文件。

常用参数及含义如下表所示:

Linux系统命令符01

rm test -r   加上 -r 是删除非空的文件夹;rm只能删除文件,rmdir只能删除空目录(空文件夹);rm删除的东西在linux里边很难恢复。

rm test -f 是强制删除;rm test -rf 强制删除。

<10>创建链接文件:In(快捷方式)

Linux链接文件类似于windows下的快捷方式;链接文件分为软链接和硬链接。

Linux系统命令符01

Linux系统命令符01

软链接:源文件删了,快捷方式就打不开了;

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

硬链接:源文件删了,快捷方式还可以打开。

Linux系统命令符01

Linux系统命令符01

linux系统,删除文件的时候,它会看看你这个内容有多少个文件名,比如说2个;它删一个只是删除了一个文件名,文件个数减去1;最后发现减到0了就真的删出了。

怎么看它文件数有几个呢?见下

[root@localhost ~]# ls -l
total
-rw-r--r--. root root Jul : .py
-rw-r--r--. root root Jul : 345link.py
-rw-r--r--. root root Jul : .py
-rw-------. root root Jul : anaconda-ks.cfg
[root@localhost ~]# ln .py 345link_2.py 再添加个硬链接,个数变为3个。
[root@localhost ~]# ls -l
total
-rw-r--r--. root root Jul : .py
-rw-r--r--. 3 root root Jul : 345link_2.py
-rw-r--r--. 3 root root Jul : 345link.py
-rw-r--r--. 3 root root Jul : .py
-rw-------. root root Jul : anaconda-ks.cfg
[root@localhost ~]#

<11>cat 查看或者合并文件内容

Linux系统命令符01

<12> grep是在一个文件中去搜索东西

Linux系统命令符01

Linux系统命令符01

Linux系统命令符01

<13>查找文件:find

find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。

Linux系统命令符01

find是从路径里边找文件

[root@localhost ~]# ls -l
total
-rw-r--r--. root root Jul : .py
-rw-r--r--. root root Jul : 345link_2.py
-rw-r--r--. root root Jul : 345link.py
-rw-r--r--. root root Jul : .py
-rw-------. root root Jul : anaconda-ks.cfg
[root@localhost ~]# pwd
/root
[root@localhost ~]# find /home/ -name .py
[root@localhost ~]# find /root/ -name .py 在root目录下查找文件
/root/.py
[root@localhost ~]# find / -name .py 不知道它在哪个目录下的查找方式
/root/.py
^C 按ctrl+c结束查找
[root@localhost ~]# find /root/ -name *
/root/.py
[root@localhost ~]#

<14> cp拷贝文件

cp命令的功能是将给出的文件或目录复制到另外一个文件或目录中,相当于DOS下的copy命令。常用选项说明:

Linux系统命令符01

Linux系统命令符01

[root@localhost ~]# ls
.py 345link_2.py 345link.py .py anaconda-ks.cfg
[root@localhost ~]# mkdir test
[root@localhost ~]# ls
.py 345link_2.py 345link.py .py anaconda-ks.cfg test
[root@localhost ~]# cp .py test/
[root@localhost ~]# ls test/
.py
[root@localhost ~]# tree
-bash: tree: command not found
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# mkdir test2
[root@localhost ~]# ls
.py 345link_2.py 345link.py .py anaconda-ks.cfg test test2
[root@localhost ~]# ls test
.py
[root@localhost ~]# cp test test2/
cp: omitting directory ‘test’
[root@localhost ~]# cp test test2/ -r 拷贝文件夹需要加-r;拷贝文件不需要加
[root@localhost ~]# tree 在ubuntu中是一个树状的结构
-bash: tree: command not found
[root@localhost ~]# ls test2
test
[root@localhost ~]#

<15>mv移动(相当于剪切的功能了,可以移动也可以重命名)

[root@localhost ~]# ls
.py 345link_2.py 345link.py .py anaconda-ks.cfg test test2
[root@localhost ~]# mv .py test 把345.py文件移动到test文件中;
[root@localhost ~]# ls
.py 345link_2.py 345link.py anaconda-ks.cfg test test2
[root@localhost ~]# ls test
.py .py
[root@localhost ~]# mv test2/ test/ 把test2文件移动到test文件中 ;
[root@localhost ~]# ls test
.py .py test2

Linux系统命令符01

<16>归档管理:tar

计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。

tar使用格式tar[参数]打包文件名 文件;tar命令很特殊,其参数前面可以使用"-",也可以不使用。

Linux系统命令符01

Linux系统命令符01

把1.txt、2.txt、3.txt  三个文件打包成test.tar; -xvf是解包

[root@localhost ~]# ls *.py
123_2.py 345link_2.py 345link.py
[root@localhost ~]# tar -cvf kris_1.tar *.py 打包
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris_1.tar test
[root@localhost ~]# mv kris_1.tar/ test/ 移动不了,不知道为什么??
mv: cannot stat ‘kris_1.tar/’: Not a directory
[root@localhost ~]# ls test
.py .py test2
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris_1.tar test
[root@localhost ~]# tar -xvf kris_1.tar 解包
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris_1.tar test
[root@localhost ~]#

<17>文件压缩解压:gzip

tar与gzip命令结合使用实现文件打包、压缩。tar只负责打包压缩文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。

gzip使用格式如下:

gzip [选项] 被压缩文件

Linux系统命令符01

Linux系统命令符01

解压用法:tar zxvf压缩包包名

-z:指定压缩包的格式为:file.tar.gz
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg ls.txt test
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg ls.txt test
[root@localhost ~]# tar -zcvf kris-1.tar.gz *.py 既打包又压缩了
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz ls.txt test
[root@localhost ~]# rm *.py
rm: remove regular empty file ‘123_2.py’? yes
rm: remove regular empty file ‘345link_2.py’? yes
rm: remove regular empty file ‘345link.py’? yes
[root@localhost ~]# ls
anaconda-ks.cfg kris-1.tar.gz ls.txt test
[root@localhost ~]# tar -zxvf kris-1.tar.gz
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz ls.txt test
[root@localhost ~]#

可以指定位置

Linux系统命令符01

[root@localhost ~]# tar -zxvf kris-1.tar.gz -C test/
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz ls.txt test
[root@localhost ~]# ls test/
123_2.py 345link_2.py 345link.py test2

<18>文件压缩解压:bzip2

Linux系统命令符01

[root@localhost ~]# rm test/ -r 删除文件的
rm: descend into directory ‘test/’? yes
rm: descend into directory ‘test/test2’? yes
rm: descend into directory ‘test/test2/test’? yes [root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg ls.txt
[root@localhost ~]# tar -zcvf kris-1.tar.gz *.py 打包解压的两种方式
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz ls.txt
[root@localhost ~]# tar -jcvf kris-2.tar.bz2 *.py
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt
[root@localhost ~]# rm *.py
rm: remove regular empty file ‘123_2.py’? yes
rm: remove regular empty file ‘345link_2.py’? yes
rm: remove regular empty file ‘345link.py’? yes
[root@localhost ~]# ls
anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt
[root@localhost ~]# tar -jxvf kris-2.tar.bz2
123_2.py
345link_2.py
345link.py
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt

<19>文件压缩解压:zip、unzip

Linux系统命令符01

[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt
[root@localhost ~]# zi
-bash: zi: command not found
[root@localhost ~]# zi
zic zip zipcloak zipgrep zipinfo zipnote zipsplit
[root@localhost ~]# zip mmmm *.py
adding: 123_2.py (stored 0%)
adding: 345link_2.py (stored 0%)
adding: 345link.py (stored 0%)
[root@localhost ~]# ls
123_2.py 345link_2.py 345link.py anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt mmmm.zip
[root@localhost ~]# rm *.py
rm: remove regular empty file ‘123_2.py’? yes
rm: remove regular empty file ‘345link_2.py’? yes
rm: remove regular empty file ‘345link.py’? yes
[root@localhost ~]# ls
anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt mmmm.zip
[root@localhost ~]# unzip -d test mmmm.zip 没有test就创建
Archive: mmmm.zip
extracting: test/123_2.py
extracting: test/345link_2.py
extracting: test/345link.py
[root@localhost ~]# ls
anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt mmmm.zip test
[root@localhost ~]# ls test/
123_2.py 345link_2.py 345link.py
[root@localhost ~]#

<20>查看命令的位置which

[root@localhost ~]# ls /bin/l*
[root@localhost ~]# cd /bin/
[root@localhost bin]# ls
[root@localhost bin]# cd /usr/sbin/
[root@localhost sbin]# ls [root@localhost home]# cd root/
-bash: cd: root/: No such file or directory
[root@localhost home]# cd ..
[root@localhost /]# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
[root@localhost /]# cd root/
[root@localhost ~]# ls
anaconda-ks.cfg kris-1.tar.gz kris-2.tar.bz2 ls.txt mmmm.zip test
[root@localhost ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
[root@localhost ~]#

Linux系统命令符01

退出超级管理员用exit

上一篇:Linux盘符绑定槽位


下一篇:Linux中盘符的两种挂载方法