1:文件与目录

  • CD 切换当前工作目录
  • mkdir 创建目录
  • re -dir 删除目录
  • pwd 打印当前工作目录
  • 绝对路径和相对路径
  • 硬链接 和软链接
  • CP拷贝
  • MV 移动
  • dirname 和 basenam
  • 文件内容的查阅
  • 修改时间文件于新建文件
  • 命令与文件的查询
cd /etc #直接切换到/etc目录
cd .. #切换到上层目录
cd . #切换到当前目录
cd #回到自己的家目录
cd ~ #回到自己的家目录
cd - #回到上次工作目录
pwd [-LP]
• L 显示逻辑工作目录
• P 显示物理工作目录
&#x2022; mkdir [pm] <dir> &#x2022; -p &#x81EA;&#x52A8;&#x521B;&#x5EFA;&#x2F57;&#x76EE;&#x5F55;
&#x2022; -m &#x8BBE;&#x7F6E;&#x6743;&#x9650;</dir>
[root@iZbp16r4d86u2hs6405o6mZ ~]# mkdir -p python/code/
[root@iZbp16r4d86u2hs6405o6mZ ~]# ls -al
total 128
dr-xr-x---. 14 root root  4096 May 24 13:20 .
dr-xr-xr-x. 18 root root  4096 May 21 12:02 ..

-rw-r--r--   1 root root    61 May 23 08:44 1.c
-rw-------   1 root root  4288 May 24 13:14 .bash_history
-rw-r--r--.  1 root root    18 Dec 29  2013 .bash_logout
-rw-r--r--.  1 root root   176 Dec 29  2013 .bash_profile
-rw-r--r--.  1 root root   176 Dec 29  2013 .bashrc
drwxr-xr-x   3 root root  4096 Jul 11  2019 .cache
drwxr-xr-x   2 root root  4096 May 24 11:02 Ccode
-rw-r--r--.  1 root root   100 Dec 29  2013 .cshrc
drwxr-xr-x   2 root root  4096 May 21 13:07 .LfCache
drwxr-xr-x   3 root root  4096 May 21 12:26 .local
drwxr-xr-x   2 root root  4096 Jul 11  2019 .pip
drwxr-----   3 root root  4096 May 21 12:19 .pki
-rw-r--r--   1 root root   205 May 21 11:59 .pydistutils.cfg
drwxr-xr-x   3 root root  4096 May 24 13:20 python

rm dir [r]

• r 递归删除目录及其内容 对话框 强制删除

• f — force 递归删除

/* 目录下所有

remark:—→ rm -rf /* 意义递归删除所有

相对路径 指令

[root@iZbp16r4d86u2hs6405o6mZ Ccode]# gcc 1.c
[root@iZbp16r4d86u2hs6405o6mZ Ccode]# ls

[root@iZbp16r4d86u2hs6405o6mZ Ccode]# ./a.out
[root@iZbp16r4d86u2hs6405o6mZ Ccode]# gcc 1.c
[root@iZbp16r4d86u2hs6405o6mZ Ccode]# ls
1.c  2.c  3.c  a.c  a.out  b.c
[root@iZbp16r4d86u2hs6405o6mZ Ccode]# ./a.out
Hello World[root@iZbp16r4d86u2hs6405o6mZ Ccode]#

PATH=”$PATH”:/Ccode/a.out —?硬转义 当前代码代表什么意思。

[root@iZbp16r4d86u2hs6405o6mZ ln]# touch f12
[root@iZbp16r4d86u2hs6405o6mZ ln]# ln f12 f11
[root@iZbp16r4d86u2hs6405o6mZ ln]# ln -s f12 f13
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -li
total 0
1063645 -rw-r--r-- 2 root root 0 May 24 14:15 f11
1063645 -rw-r--r-- 2 root root 0 May 24 14:15 f12
1063646 lrwxrwxrwx 1 root root 3 May 24 14:16 f13 -> f12

试验一下…

当前目录下的id F11硬链接和F12 相同 但是F13的软链接指向F12 ID却是有差异的

ln -s 软连接 实际上→在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

ln dir ln dir 硬链接 →硬连接指通过索引节点来进行连接

提示:硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。 在Linux中,多个文件名指向同一索引节点是存在的。 —>一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止”误删”的功能。 —>硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止”误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

cp [irapdslu]

Ø -i:若⽂件存在,询问用户

Ø -r:递归复制

Ø -a: pdr的集合

Ø -p: 连同⽂件属性⼀起拷贝

Ø -d: 若源⽂件为连接⽂件的属性,则复制连接⽂件的属性

Ø -s:拷贝为软连接

Ø -l:拷贝为硬连接

Ø -u:源⽂件比目的⽂件新才拷贝

Ø 尝试:cp file1 file2 … dir

[root@iZbp16r4d86u2hs6405o6mZ ln]# touch a.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -i
1063645 a.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ln a.c b.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -i
1063645 a.c  1063645 b.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ln -s a.c c.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -i
1063645 a.c  1063645 b.c  1063646 c.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -il
total 0
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 a.c
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 b.c
1063646 lrwxrwxrwx 1 root root 3 May 24 15:17 c.c -> a.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -il
total 0
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 a.c
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 b.c
1063646 lrwxrwxrwx 1 root root 3 May 24 15:17 c.c -> a.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# cp c.c d.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -il
total 0
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 a.c
1063645 -rw-r--r-- 2 root root 0 May 24 15:14 b.c
1063646 lrwxrwxrwx 1 root root 3 May 24 15:17 c.c -> a.c
1063649 -rw-r--r-- 1 root root 0 May 24 15:30 d.c
[root@iZbp16r4d86u2hs6405o6mZ ln]#

remark :

        &#x5728;&#x5F53;&#x524D;&#x62F7;&#x8D1D;&#x7684;c.c &#x5230;d.c (c.c &#x6765;&#x81EA;&#x4E8E;a.c&#x2192;&#x5B9E;&#x9645;&#x4E5F;&#x662F;a.c)     &#x6700;&#x7EC8;cp&#xFF08;&#x62F7;&#x8D1D;&#x7684;&#x6307;&#x4EE4;&#x6700;&#x7EC8;&#x6587;&#x4EF6;id &#x4E5F;&#x4E8E;a.c&#x7684;id&#x4E0D;&#x540C;&#xFF09;
[root@iZbp16r4d86u2hs6405o6mZ ln]# cp -d c.c e.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls i
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -il
1063646 lrwxrwxrwx 1 root root 3 May 24 15:17 c.c -> a.c
1063649 -rw-r--r-- 1 root root 0 May 24 15:30 d.c
1063650 lrwxrwxrwx 1 root root 3 May 24 15:37 e.c -> a.c
[root@iZbp16r4d86u2hs6405o6mZ ln]#

remark :-d 由此 返回看出(e.c -> a.c) 这里是链接的属性

[root@iZbp16r4d86u2hs6405o6mZ ln]# vim c.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# cp c.c d.c
cp: overwrite &#x2018;d.c&#x2019;? y
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls -il
total 12
1063645 -rw-r--r-- 2 root root 72 May 24 15:56 a.c
1063645 -rw-r--r-- 2 root root 72 May 24 15:56 b.c
1063646 lrwxrwxrwx 1 root root  3 May 24 15:17 c.c -> a.c
1063651 -rw-r--r-- 1 root root 72 May 24 15:57 d.c
1063650 lrwxrwxrwx 1 root root  3 May 24 15:37 e.c -> a.c

从c.c 覆盖到d.c 必须是源文件比目标文件新

mv [ifu]

mv source1 source2 source3 dir

Ø-i:互动模式

Ø-f:force

Ø-u:源⽂件(更新)才会移动

[root@iZbp16r4d86u2hs6405o6mZ ln]# mv d.c Ccode
[root@iZbp16r4d86u2hs6405o6mZ ln]# ls
a.c  b.c  c.c  Ccode  e.c
[root@iZbp16r4d86u2hs6405o6mZ ln]# cd
[root@iZbp16r4d86u2hs6405o6mZ ~]# cd Ccode
[root@iZbp16r4d86u2hs6405o6mZ Ccode]# ls
1.c  2.c  3.c  a.c  a.out  b.c
[root@iZbp16r4d86u2hs6405o6mZ Ccode]#

dirname

1:获取目录部分,剥掉文件名。

[root@iZbp16r4d86u2hs6405o6mZ ~]# dirname /Ccode/a.c
output   -->/Ccode

如果不存在就在. 一般在脚本取路径

basenam

2:获取末尾的文件名或者路径名

[root@iZbp16r4d86u2hs6405o6mZ ~]# basename /Ccode/1.c
-->1.c

文件内容的查阅

参数 cat [-b] file 显示行号

[root@iZbp16r4d86u2hs6405o6mZ Ccode]# cat -b 1.c
    out put
     1  #include<stdio.h>
     2  #include<stdlib.h>
     3  #include<unistd.h>
     4  #include<fcntl.h>
     5  #include<string.h>
     6  #include<pthread.h>

     7  int main()
     8  {
     9      /*&#x5728;&#x53CC;&#x5F15;&#x53F7;&#x4E2D;&#x95F4;&#x8F93;&#x5165;Hello World*/
    10      printf("Hello World");
    11      return 0;
    12  }</pthread.h></string.h></fcntl.h></unistd.h></stdlib.h></stdio.h>

与cat 同理不多做赘述

Ø nl [-bnw]

Ø选项

Ø -b: ⾏号指定的⽅式

Ø -b a:相当于cat –n

Ø -b t:相当于cat -b

Ø -n:列出⾏号的表示⽅法

Ø -n ln:⾏号在屏幕最左边显示

Ø -n rn:⾏号在自⼰字段的最右边显示

Ø -n rz:⾏号在自⼰字段的最右边显示,前面自动补全0

Ø -w

[root@iZbp16r4d86u2hs6405o6mZ Ccode]# nl -b a 1.c

  1  #include<stdio.h>

  2  #include<stdlib.h>

  3  #include<unistd.h>

  4  #include<fcntl.h>

  5  #include<string.h>

  6  #include<pthread.h>

  7

  8  int main()

  9  {

  10      /*&#x5728;&#x53CC;&#x5F15;&#x53F7;&#x4E2D;&#x95F4;&#x8F93;&#x5165;Hello World*/

  11      printf("Hello World");

  12      return 0;

  13  }</pthread.h></string.h></fcntl.h></unistd.h></stdlib.h></stdio.h>

复习一下 | 管道符

Original: https://www.cnblogs.com/yijieyufu/p/16423165.html
Author: Aquiet
Title: 1:文件与目录

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/581808/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Linux系统卡死后紧急处理

    前言:Linux系统卡死了的情况有很多,最常见的是系统负载过高导致的。还可以运行内存耗用极大的程序(如虚拟机),也会迅速提升系统负载。注意:不能再试图依赖任何图形界面的东西,如 G…

    Linux 2023年6月7日
    0108
  • redis缓存按条件查询,删除等等i_master_cell

    先用hash 存masterid中的全部i_master_cell key为master_id hash里面为key 为cell_id value为i_master_cell的各个…

    Linux 2023年5月28日
    093
  • 虚拟机网络地址配置你不知道的事儿-服务器的种类

    想必大家在初学Linux过程中,应该都是跟我一样白嫖一台虚拟机进行使用把,但是在大家白嫖的同时知不知道我们公司内是使用的什么样的服务器呢?公司肯定不会跟我们一样在自己电脑进行安装虚…

    Linux 2023年5月27日
    0102
  • Shell语法

    在 Shell 中引号分为 2 种:单引号、双引号。 ( 1 )双引号 由双引号括起来的字符,除 $ 、倒引号和反斜线( \ )仍保留其特殊功能外,其余字符通常作为普通字符对待。 …

    Linux 2023年5月28日
    096
  • 网站URL如何SEO优化

    前言 本文讲解网站的URL如何进行SEO优化,并在自己的WordPress博客echeverra中优化URL。 起因 对于SEO我了解的并不多,只知道SEO做的好,那么各大搜索网站…

    Linux 2023年6月7日
    0107
  • 【机器学习笔记】一元线性回归原理、公式及代码实现

    线性回归是逻辑回归的基础,逻辑回归又是神经网络的组成部分,用于解决2分类问题 线性回归是所有算法的基础 概念: 线性关系是指变量之间的关系是一次函数,一个自变量x和因变量y的关系表…

    Linux 2023年6月13日
    097
  • 修改shell命令提示符和命令的输入颜色

    修改命令提示符颜色 修改命令提示符的话,只需修改PS1环境变量即可。 PS1=’\[\033[01;31m\][\u@\h \W]$ \[\033[00m\]’ 效果如图: 修改命…

    Linux 2023年5月28日
    096
  • docker 安装redis

    安装docker https://www.cnblogs.com/ximensama/p/14903105.html 安装redis https://www.cnblogs.com…

    Linux 2023年5月28日
    096
  • Dockerfile

    基本结构 Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 快速创建自定义镜像。 Dockerfile 由一行行命令语句组成,并且支持以 # 开头…

    Linux 2023年6月13日
    0104
  • Zabbix 使用心得总结

    zabbix 使用中部分功能总结1、监控采集的值(如磁盘空间、流量数据等)无需脚本进行单位转换,zabbix可自动转换为合适的单位 如采集的字节可自动转换为KB、MB 如果设置了单…

    Linux 2023年6月14日
    0157
  • Linux下无限期使用Navicat16

    原文链接:https://www.zhoubotong.site/post/79.htmllinux 下的数据库图形化工具比较好用的有dbeaver完全免费,相比navicat,我…

    Linux 2023年6月6日
    0149
  • 后端编写Swagger接口管理文档

    在后端开发当中,编写好多个接口后需要通过注解编写相应的接口文档提供给前端调用接口实现前后端分离。 Swagger接口管理文档 访问接口文档的网页:http://localhost:…

    Linux 2023年6月7日
    099
  • nginx安装配置步骤

    ​ yum install gcc gcc-c++ pcre pcre-devel openssl openssl-devel zlib zlib-devel -y [root@n…

    Linux 2023年6月11日
    095
  • 【转】我是一个CPU:这个世界慢!死!了!

    简介 经常听到有人说磁盘很慢、网络很卡,这都是站在人类的感知维度去表述的,比如拷贝一个文件到硬盘需要几分钟到几十分钟,够我去吃个饭啦;而从网络下载一部电影,有时候需要几个小时,我都…

    Linux 2023年6月16日
    0153
  • LeetCode 416.分割等和子集 | 类0-1背包问题 | 解题思路及代码

    Given a nonempty array nums, which only contains positive number. Find if the array can be…

    Linux 2023年6月13日
    088
  • powershell 编写的tui界面脚本《电壳别名宝》

    中文名: 《电壳别名宝》 English name: 《Power Alias》 powershell 编写的tui界面脚本。 用途:保存容易记住的别名(支持中文),保存linux…

    Linux 2023年5月27日
    0150
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球