Linux目录和文件管理相关命令

目录的结构:

  • /bin:存放基本用户命令的二进制文件,如ls、cp等,这些命令对所有用户都是必需的。
  • /boot:包含启动Linux时所需的一些文件,比如Linux内核文件和引导加载程序GRUB。
  • /dev:包含设备文件。在Linux中,许多设备都以文件的形式出现在这个目录中,比如硬盘(/dev/sda)和USB设备(/dev/sdb1)等。
  • /etc:包含系统配置文件。这个目录下的文件会影响系统的行为。用户可以编辑其中的某些文件来配置系统。
  • /home:用户的家目录。每个用户都有一个对应的目录,在这个目录下,用户可以存放个人文件,如文档、音乐等。
  • /lib:包含系统和应用程序的基本库文件。这些库文件包含代码和数据,很多程序运行时需要用到。
  • /media:用于挂载可移动媒体设备,如CD-ROMs、USB驱动器等。
  • /mnt:通常用于临时挂载文件系统。
  • /opt:用于存放可选的应用软件包和相关的数据。一些较大的软件,如某些数据库系统,通常会被安装在这里。
  • /proc:一个虚拟文件系统,包含当前内核运行状态的信息。它并不占用硬盘空间,而是在内存中以文件系统的方式呈现。
  • /root:超级用户(root用户)的家目录。这是系统管理员的默认工作目录。
  • /sbin:存放系统管理命令的二进制文件,如fdisk、ifconfig等。这些命令通常仅由root用户使用。
  • /tmp:用于存放临时文件。系统和用户都可以在这里创建临时文件。注意,这个目录中的文件可能在重启后被删除。
  • /usr:包含用户应用程序和文件。它是Unix System Resources的缩写。这个目录下通常包含子目录如/usr/bin/usr/lib/usr/local等,用于存放用户级的应用程序、库文件和本地安装的软件。
    • /var:包含经常变化的文件,如日志文件、邮件和打印队列等。
      -

      普通字符

      d文件夹
      c字符设备,键盘
      b块设备  硬盘       
      l软连接 类似快捷方式
      p管道文件,用于程序直接的数据传递,特点是单向的
      s套接字,用于传递数据,可以跨主机,双向的

      在Linux中,当你执行`ll`命令时,会显示以下列信息:

        1. **文件类型和权限**(10个字符):第一个字符表示文件类型(例如,`-`代表普通文件,`d`代表目录,`l`代表链接文件等)。接下来的九个字符分为三组,每组三个字符,分别表示文件所有者、组成员、其他用户的权限(读r、写w、执行x)。

        2. **链接数**:表示有多少硬链接指向该文件。

        3. **所有者**:文件的所有者用户名。

        4. **组**:文件所属的群组名称。

        5. **文件大小**:以字节为单位的文件大小。

        6. **修改时间**:文件最后修改的时间。

        7. **文件名**:文件或目录的名称。

        这里是一个`ll`命令输出的示例:

        ```
        -rw-r--r-- 1 user group 0 Apr 1 12:34 example.txt
        ```

        解释如下:

        - `-rw-r--r--`:这是文件的类型和权限。这个例子中,`-`表示这是一个普通文件;`rw-`表示所有者有读和写的权限,但没有执行权限;`r--`表示组成员有读权限,没有写和执行权限;最后的`r--`表示其他用户有读权限,没有写和执行权限。

        - `1`:这个文件有一个硬链接。

        - `user`:文件的所有者是`user`。

        - `group`:文件属于`group`组。

        - `0`:文件大小是0字节。

        - `Apr 1 12:34`:文件最后修改时间是4月1日,12:34。

        - `example.txt`:文件名是`example.txt`。

        注意,不同的Linux发行版可能会对`ll`命令有不同的默认别名设置,但通常它们都是指向`ls -l`或其变体的。

 cat查看:
[root@localhost test]# cat a
1
2
3



[root@localhost test]# cat -s a
1
2
3
[root@localhost test]# cat -b a
     1	1
     2	2
     3	3



tac逆着输出:
[root@localhost test]# printf "1\n2\n3\n4\n"|tac
4
3
2
1
rev 同一行逆着输出:
[root@localhost test]# printf "1 2 3 4"|tac
1 2 3 4[root@localhost test]# 

vim d:下列代码都是对此进行修改

aaaaaaaaaaaa
bbbbbbbbbbbb
cccccccccccc
12344566
21312asdasdffsa
asdasd12eqwdas
dsadas12eqwd
asdsad21
abc sda dwdf
sadas sad asd
21ed 12d1 2ed 1d1
111 111 111
12 23 123 412

head 用法:
[root@localhost test]# head -n 3 ./d
aaaaaaaaaaaa
bbbbbbbbbbbb
cccccccccccc
[root@localhost test]# head -c 4 ./d
aaaa
类似的tail用法:
[root@localhost test]# tail -c 4 ./d
412
[root@localhost test]# tail -n 4 ./d
sadas sad asd
21ed 12d1 2ed 1d1
111 111 111
12 23 123 412

查第三行:

[root@localhost test]# head -n 3 ./d | tail -n 1
cccccccccccc

替换:

[root@localhost test]# cat d |tr a 1
111111111111
bbbbbbbbbbbb
cccccccccccc
12344566
213121sd1sdffs1
1sd1sd12eqwd1s
ds1d1s12eqwd
1sds1d21
1bc sd1 dwdf 
s1d1s s1d 1sd
21ed 12d1 2ed 1d1
111 111 111
12 23 123 412
wc用法:
  • -l:统计行数

  • -w:统计单词个数

  • -c:统计字节数

[root@localhost test]# wc -l d
13 d
[root@localhost test]# wc -w d
25 d
[root@localhost test]# wc -c d
173 d

 

 paste :
[root@localhost test]# cat e f
123456
123123
234142
231525
root1
root2
root3
root4
[root@localhost test]# paste -d: f e
root1:123456
root2:123123
root3:234142
root4:231525

tar

tar tape archive 磁带归档,磁带便宜磁带机很贵,慢永久保存,硬盘越来越便宜了

tar [选项] ... 归档文件名 源文件或目录 tar [选项] ... 归档文件名 [-C 目标目录]

此处选项有先后要求

  • -c:创建(Create).tar 格式的包文件

  • -x:解开.tar 格式的包文件

  • -C:解压时指定释放的目标文件夹

  • -f:表示使用归档文件(一般都要带上表示使用tar)

  • -p:打包时保留文件及目录的权限

  • -P:打包时保留文件及目录的绝对径

  • -t:列表查看包内的文件(要和f一起使用)

  • -v:输出详细信息(Verbose)

  • -j:调用 bzip2 程序进行压缩或解压

  • -z:调用 gzip 程序进行压缩或解压

[root@localhost test2]# mkdir 1
[root@localhost test2]# tar zcvf ./1/dracut.conf.tar.gz dracut.conf
dracut.conf
[root@localhost test2]# ls
1  dracut.conf
[root@localhost test2]# tree
.
├── 1
│   └── dracut.conf.tar.gz
└── dracut.conf
[root@localhost test2]# mkdir 2
[root@localhost test2]# tar xzvf ./1/dracut.conf.tar.gz -C ./2
dracut.conf
[root@localhost test2]# tree
.
├── 1
│   └── dracut.conf.tar.gz
├── 2
│   └── dracut.conf
└── dracut.conf

用*来压缩选择全部文件夹:

[root@localhost test2]# tar czvf 3/abc.tar /test2*
tar: 从成员名中删除开头的“/”
/test2/
/test2/1/
/test2/1/dracut.conf.tar.gz
/test2/2/
/test2/2/dracut.conf
/test2/dracut.conf
/test2/3/
/test2/3/abc.tar
[root@localhost test2]# 
.
├── 1
│   └── dracut.conf.tar.gz
├── 2
│   └── dracut.conf
├── 3
│   └── abc.tar
└── dracut.conf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值