Linux基础命令一,


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相当于被调用了两次

相关内容