-
一.文件命名规则:
- 不能使用/来当文件名,/是用来做根的,也是用来做路径分隔符的
- 文件名不能超过255个字符
- 区分大小写file File FILE fIle
- 目录也是文件,在同一路径下,两个不同类型文件不能同名
-
二.创建链接文件
- 创建软连接:ln -s 原文件 目标文件 ---可以是任何文件
- 创建硬链接:ln 原文件 目标文件 ----只能给普通文件创建
-
三.创建,删除目录文件
- 1、创建目录(make directory) ---语法为: mkdir [-p] [/路径/]目录名
- -p 可快速创建出目录结构中指定的每个目录,对于已存在的目录不会被覆盖
- -v 显示创建目录的详细过程
- 2、统计目录及文件的空间占用情况——du命令
- 功能:查看某个目录中的各级子目录所占用的磁盘空间数。
- 命令格式: du [选项] [目录名]
- 特别功能
- -a:统计磁盘空间占用时包括所有的文件,而不仅仅是只统计目录
- -s:只统计每个文件所占用空间总大小,而不是统计每个子目录文件的大小
- -h:以K,M,G为单位显示磁盘使用情况,以提高信息的可读性;
- 3、删除目录文件 : rm -r [-f] 目录文件名
- -r:是递归删除
- -rf或者-r -f :强制删除
- 1、创建目录(make directory) ---语法为: mkdir [-p] [/路径/]目录名
-
四.创建,删除普通文件
- 创建普通文件: touch [OPTION]... FILE...
- 若需要创建的文件存在,会更新创建时间(三个),且stat 可以查看文件的详细信息
- atime,即access time,访问文件的时间,查看了一下文件内容(cat),文件的atime时间会更新
- mtime,即modify time,修改内容的时间,文件内容被改变了,ctime会更新
- ctime,即change time,修改文件元数据的时间
-
- 若创建的文件不存在,则会直接创建该文件
- 2、如果文件不存在,则表示创建文件
- 创建多个普通文件:
- 方法1: touch 文件名1 文件名2 文件名3
- 方法2: touch {文件名1,文件名2,文件名3}
- 若需要创建的文件存在,会更新创建时间(三个),且stat 可以查看文件的详细信息
- 删除普通文件: rm [-f] 文件名
- [root@master test]# touch {1,2}{3,4}
- [root@master test]# touch abc{1..100}
- 删除多种:[root@xjf~]# rm -rf /root/dir* --- 将dir的都删掉
- [root@xjf~]# rm -rf /root/* ----将root下除隐藏文件其他所有的文件删掉
- [root@xjf~]# rm -rf /* ----- 所有都强制删掉(注意:最好不要使用这个命令)
- 创建普通文件: touch [OPTION]... FILE...
-
五.数据流和重定向
- 数据流
- 标准输入(standard input,简称stdin):默认情况下,标准输入指从键盘获取的输入。代码为0
- 标准输出(standard output,简称stdout):默认情况下,命令执行所回传正确的信息会输出到屏幕上.代码为1
- 标准错误输出(standard error output,简称stderr):默认情况下,标准错误输出可理解为命令执行失败后,所回传的错误信息会输出到屏幕上.代码为2
- 重定向操作符
- 重定向操作符可以将命令输入和输出数据流从默认设备重定向到其他位置。重定向操作符本身不是命令,而是命令中附加的可改变命令的输入和输出对象的特殊符号
- 输出重定向符:>,>>
- 标准输出重定向:1>或>, 1>>或>>
- 例如:[root@xjf~]# date 1> date.txt -------将date重定向到txt文件里面,覆盖里面的原内容
- [root@xjf~]# date 1> date.txt ------将date追加到date.txt文件里面,不覆盖原来里面的内容
- 标准错误输出重定向: 2>,2>>
- [root@xjf~]# ls /home/aaaaa > list.txt 2 > error.txt -----重定向到不同的位置
- 将正确的和错误的都输入到相同的位置:[root@xjf~]# ls /home/aaaaa > list.txt 2>&1
- 重定向到空设备/dev/null:[root@xjf~]# ls /home/aaaaa.> list.txt 2> /dev/null
- 标准输出重定向:1>或>, 1>>或>>
- 输入重定向操作符:<, <<
- 标准输入重定向:< 或 0< , 0<< 或 <<
- 使用形式:
-
-
六.将标准输出重定向到文件
- echo命令用于在终端设备上输出字符串或变量提取后的值,语法格式为:“echo [字符串] [$变量]”。执行“echo 字符串”或“echo $变量”就可以,其中$符号意思是提取变量的实际值,以便后续的输出操作
- 该命令会在终端屏幕上显示如下信息:kongd.com
- 我们使用“变量”的方式提取出变量SHELL的值,并将其输出到屏幕上:变量”的方式提取出变量SHELL的值,并将其输出到屏幕上:变量”的方式提取出变量SHELL的值,并将其输出到屏幕上:变量的方式提取出变量SHELL的值,并将其输出到屏幕上:[root@kongd ~]# echo $SHELL /bin/bash
- bash shell提示符
- echo命令用于在终端设备上输出字符串或变量提取后的值,语法格式为:“echo [字符串] [$变量]”。执行“echo 字符串”或“echo $变量”就可以,其中$符号意思是提取变量的实际值,以便后续的输出操作
- 数据流
-
七.tee命令
- 管道符|:用于两个命令或者多个命令相连接,将管道符左边命令的输出作为管道符右边命令的输入。
- tee 文件 :读取标准输入的数据,并将其内容输出到文件的同时输出到屏幕(即想把输出保存到文件中,又想在屏幕上看到内容)
- tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时输出到文件。
- 适用语法:
- 参数:
- -a或--append,附加到现有文件的后面,而非覆盖它
- -i或--ignore-interrupts 忽略中断信号
- --help 在线帮助
- 在 Linux 上使用这个命令:[command] | tee [file]
- [root@master test]#tee file
- [root@master test]# cat /etc/group | tee /root/file
- tee 命令追加信息到文件中: [command] | tee -a [file]
- tee 写入多个文件:[command] | tee [file1] [file2] [file3]
- 参数:
-
八.vi编辑器
- 在Linux系统中一切都是文件,而配置一个服务就是在修改其配置文件的参数。有三种模式:命令模式,末行模式,插入模式
-
命令模式下的常用按键
- 光标跳转按键
- 复制、粘贴、删除
- 光标跳转按键
-
编辑模式:
-
按esc键可从编辑模式切换到命令模式
-
-
末行模式:
-
按 :或者 / 可从命令模式切换到末行模式。按esc键可从末行模式切换到命令模式
- 查找关键字并替换
- 保存退出
- 其他操作
- 查找关键字并替换
-
九.vim的拓展用法
-
vim三种模式的切换
-
可视化模式:
- 按Ctrl+v进入可视化模式
- 该模式下通过光标移动选择文本,选取后按 y 可以把文本提取到缓冲区(即复制),c 可以剪切。之后可以使用p在光标后粘贴,P粘贴在光标前
-
多文档编辑:
- 在打开一个文件的时候,输入 :sp /dir/file 可分屏显示另一个文件:
- 光标在多个文件之间的切换按ctrl+w w
-
vim练习
- 修改主机名:
- [root@localhost ~]# vim /etc/hostname
- 设置登陆欢迎语:
- [root@localhost ~]# vi /etc/motd
- /hello
- 修改中断当前进程的快捷键:
- [root@localhost ~]# vi ~/.bashrc
- stty intr "^b"
- #中断当前进程的快捷键就会变成ctrl+b
- 修改主机名:
-
从命令行管理文件
于 2023-03-31 10:33:38 首次发布