Linux基础命令一
Linux基础一
基础命令
ls
ls //查看目录
[root@lnh ~]# mkdir xbz
[root@lnh ~]# touch {1..5}
[root@lnh ~]# ls
1 2 3 4 5 anaconda-ks.cfg xbz
//先创建目录和文件再查看
-l 查看文件类型
[root@lnh ~]# ls -l
total 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 19:16 xbz
//先创建数字1-5,可以看出它们是普通文件,xbz是目录文件
b //块设备文件(block)
c //字符设备文件(character)
l //符号链接文件(symbolic link file)
p //命令管道(pipe)
s //套接字文件(socket)
-h//查看单位的大小
[root@lnh ~]# ls -lh
total 4.0K
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 19:16 xbz
-a//显示以.开头的为隐藏文件
[root@lnh ~]# ls -a
. 2 5 .bash_logout .cshrc xbz
.. 3 anaconda-ks.cfg .bash_profile .tcshrc
1 4 .bash_history .bashrc .viminfo
//.表示当前目录
//..表示父目录
-d//查看文件的属性
[root@lnh ~]# ls -ld xbz
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
-i//显示在内存或者硬盘中的位置
[root@lnh ~]# ls -li xbz
total 0
134646511 -rw-r--r--. 1 root root 0 Jun 29 20:20 1
134646521 -rw-r--r--. 1 root root 0 Jun 29 20:20 2
134849103 -rw-r--r--. 1 root root 0 Jun 29 20:20 3
134849109 -rw-r--r--. 1 root root 0 Jun 29 20:20 4
134849110 -rw-r--r--. 1 root root 0 Jun 29 20:20 5
-r//将目录和文件创建的时间进行倒置
[root@lnh ~]# ls -lt
total 4
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
[root@lnh ~]# ls -lrt
total 4
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
[root@lnh ~]# ll -t
total 4
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
[root@lnh ~]# ll -rt
total 4
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
-R//展开所有目录的文件
[root@lnh ~]# ls -lR
.:
total 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
./xbz:
total 0
-rw-r--r--. 1 root root 0 Jun 29 20:20 1
-rw-r--r--. 1 root root 0 Jun 29 20:20 2
-rw-r--r--. 1 root root 0 Jun 29 20:20 3
-rw-r--r--. 1 root root 0 Jun 29 20:20 4
-rw-r--r--. 1 root root 0 Jun 29 20:20 5
[root@lnh ~]# ll -R
.:
total 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
./xbz:
total 0
-rw-r--r--. 1 root root 0 Jun 29 20:20 1
-rw-r--r--. 1 root root 0 Jun 29 20:20 2
-rw-r--r--. 1 root root 0 Jun 29 20:20 3
-rw-r--r--. 1 root root 0 Jun 29 20:20 4
-rw-r--r--. 1 root root 0 Jun 29 20:20 5
cd//相当于改变当前目录
[root@lnh tushanbu]# cd .
[root@lnh tushanbu]# cd ..
[root@lnh ~]# cd tushanbu/
[root@lnh tushanbu]# cd ~
[root@lnh ~]# cd tushanbu/
[root@lnh tushanbu]# cd /root/
[root@lnh ~]#
//.表示当前目录
//..表示返回上一级目录
//~表示返回家目录
///root表示返回管理员用户
pwd//表示当前的工作目录
[root@lnh ~]# pwd
/root
//表示当前在管理员用户下面
mkdir//创建目录
-p//确保目录名称存在,不存在的就建一个
[root@lnh ~]# mkdir -p bbb/bb
[root@lnh ~]# ll
total 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 3 root root 16 Jun 29 21:06 bbb
drwxr-xr-x. 2 root root 39 Jun 29 20:42 tushanbu
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
drwxr-xr-x. 2 root root 6 Jun 29 21:02 xxx
drwxr-xr-x. 2 root root 6 Jun 29 21:03 yyy
-v//为每个创建的目录打印一条消息
[root@lnh ~]# mkdir -pv b
[root@lnh ~]# ll
total 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 1
-rw-r--r--. 1 root root 0 Jun 29 19:33 2
-rw-r--r--. 1 root root 0 Jun 29 19:33 3
-rw-r--r--. 1 root root 0 Jun 29 19:33 4
-rw-r--r--. 1 root root 0 Jun 29 19:33 5
drwxr-xr-x. 2 root root 6 Jun 29 21:15 a
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 21:15 b
drwxr-xr-x. 2 root root 6 Jun 29 21:15 bb
drwxr-xr-x. 3 root root 16 Jun 29 21:06 bbb
drwxr-xr-x. 2 root root 39 Jun 29 20:42 tushanbu
drwxr-xr-x. 2 root root 51 Jun 29 20:20 xbz
drwxr-xr-x. 2 root root 6 Jun 29 21:02 xxx
drwxr-xr-x. 2 root root 6 Jun 29 21:03 yyy
rmdir //删除目录,只能删除空目录,里面有东西就删除不了
tree //可以查看生成树目录
[root@lnh ~]# mkdir -p 111/{222/{xx,hh},777,888/bb}
[root@lnh ~]# tree
.
├── 1
├── 10
├── 111
│ ├── 222
│ │ ├── hh
│ │ └── xx
│ ├── 777
│ └── 888
│ └── bb
touch//创建文件
[root@lnh ~]# touch {1..10}
[root@lnh ~]# ls
1 2 4 6 8 a b bbb xbz yyy
10 3 5 7 9 anaconda-ks.cfg bb tushanbu xxx
stat //显示文件或者系统状态
[root@lnh ~]# stat xbz
File: xbz
Size: 51 Blocks: 0 IO Block: 4096 directory
Device: fd00h/64768d Inode: 134646507 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2022-06-29 20:20:34.414333304 +0800
Modify: 2022-06-29 20:20:33.266333285 +0800
Change: 2022-06-29 20:20:33.266333285 +0800
Birth: -
rm //删除文件
-r //删除目录
-f //删除文件,强制性删除
[root@lnh ~]# rm -rf 111
[root@lnh ~]# rm -f {1..10}
[root@lnh ~]# ls
222 a anaconda-ks.cfg b bb bbb tushanbu xbz xxx yyy
cp //复制文件
-a //复制备份
-r //用于目录之间的复制
-p//复制后保留原来的权限
[root@lnh ~]# cp -a a 222
[root@lnh ~]# cd 222/
[root@lnh 222]# ls
a
[root@lnh 222]# cd ..
[root@lnh ~]# cp -r bb xbz
[root@lnh ~]# cd xbz/
[root@lnh xbz]# ls
1 2 3 4 5 bb
[root@lnh xbz]# cd ..
[root@lnh ~]# ll
total 4
drwxr-xr-x. 3 root root 15 Jun 29 21:55 222
drwxr-xr-x. 2 root root 6 Jun 29 21:15 a
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 21:15 b
drwxr-xr-x. 2 root root 6 Jun 29 21:15 bb
drwxr-xr-x. 3 root root 16 Jun 29 21:06 bbb
drwxr-xr-x. 2 root root 39 Jun 29 20:42 tushanbu
drwxr-xr-x. 3 root root 61 Jun 29 21:56 xbz
drwxr-xr-x. 2 root root 6 Jun 29 21:02 xxx
drwxr-xr-x. 2 root root 6 Jun 29 21:03 yyy
[root@lnh ~]# cp -rp b xbz
[root@lnh ~]# cd xbz/
[root@lnh xbz]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 29 20:20 1
-rw-r--r--. 1 root root 0 Jun 29 20:20 2
-rw-r--r--. 1 root root 0 Jun 29 20:20 3
-rw-r--r--. 1 root root 0 Jun 29 20:20 4
-rw-r--r--. 1 root root 0 Jun 29 20:20 5
drwxr-xr-x. 2 root root 6 Jun 29 21:15 b
drwxr-xr-x. 2 root root 6 Jun 29 21:56 bb
mv //移动文件
[root@lnh ~]# mv 222 xbz/
[root@lnh ~]# cd xbz/
[root@lnh xbz]# ls
1 2 222 3 4 5 b bb
install//可复制文件并且带有属性
[root@lnh ~]# touch 333
[root@lnh ~]# touch 444
[root@lnh ~]# ls
333 444 a anaconda-ks.cfg b bb bbb tushanbu xbz xxx yyy
[root@lnh ~]# ll
total 4
-rw-r--r--. 1 root root 0 Jun 29 22:05 333
-rw-r--r--. 1 root root 0 Jun 29 22:05 444
drwxr-xr-x. 2 root root 6 Jun 29 21:15 a
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 21:15 b
drwxr-xr-x. 2 root root 6 Jun 29 21:15 bb
drwxr-xr-x. 3 root root 16 Jun 29 21:06 bbb
drwxr-xr-x. 2 root root 39 Jun 29 20:42 tushanbu
drwxr-xr-x. 5 root root 81 Jun 29 22:00 xbz
drwxr-xr-x. 2 root root 6 Jun 29 21:02 xxx
drwxr-xr-x. 2 root root 6 Jun 29 21:03 yyy
[root@lnh ~]# install 333 444
[root@lnh ~]# ll
total 4
-rw-r--r--. 1 root root 0 Jun 29 22:05 333
-rwxr-xr-x. 1 root root 0 Jun 29 22:06 444
drwxr-xr-x. 2 root root 6 Jun 29 21:15 a
-rw-------. 1 root root 1003 Jun 28 04:46 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jun 29 21:15 b
drwxr-xr-x. 2 root root 6 Jun 29 21:15 bb
drwxr-xr-x. 3 root root 16 Jun 29 21:06 bbb
drwxr-xr-x. 2 root root 39 Jun 29 20:42 tushanbu
drwxr-xr-x. 5 root root 81 Jun 29 22:00 xbz
drwxr-xr-x. 2 root root 6 Jun 29 21:02 xxx
drwxr-xr-x. 2 root root 6 Jun 29 21:03 yyy
硬链接/软链接
[root@lnh ~]# mkdir tushanbu
[root@lnh ~]# cd tushanbu/
[root@lnh tushanbu]# touch 333
[root@lnh tushanbu]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 29 20:37 333
[root@lnh tushanbu]# ln -s 333 444//创建一个软链接,333被创建成为了444,此时444指向333
[root@lnh tushanbu]# ls
333 444
[root@lnh tushanbu]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 29 20:37 333
lrwxrwxrwx. 1 root root 3 Jun 29 20:38 444 -> 333
//此处删除333(相当于电脑的软件),444(相当于软件的快捷方式)会变成一闪一闪不能使用,如果恢复333,444可以继续使用
[root@lnh tushanbu]# ln 333 555
[root@lnh tushanbu]# ll
total 0
-rw-r--r--. 2 root root 0 Jun 29 20:37 333
lrwxrwxrwx. 1 root root 3 Jun 29 20:38 444 -> 333
-rw-r--r--. 2 root root 0 Jun 29 20:37 555
//可以看见333那里的数字1变成了2相当于被调用了两次