linux文件命令

linux文件命令

来源于 实验楼linux基础入门https://www.shiyanlou.com/courses/1
和菜鸟教程 linux命令 http://www.runoob.com/linux/linux-command-manual.html

命令:

rm -rf 一定不要以 ‘/’ 开头
rm -rf /* 十分危险的命令
rm -rf和rm
touch 新建
grep 'root' /etc/passwd
grep -r 'linux' /var/log/
cat

简单来说, Linux 中管道的作用是将上一个命令的输出作为下一个命令的输入, 像 pipe 一样将各个命令串联起来执行, 管道的操作符是 |
ls /etc | grep 'ssh'
cat /etc/passwd | grep 'root'
可以使用 > 或 < 将命令的输出重定向到一个文件中
echo 'Hello World' > ~/test.txt


netstat 命令用于显示各种网络相关信息,如网络连接, 路由表, 接口状态等等
列出所有处于监听状态的tcp端口
netstat -lt
查看所有的端口信息, 包括 PID 和进程名称
netstat -tulpn

ps 命令
过滤得到当前系统中的 ssh 进程信息
ps aux | grep 'ssh'

mkdir

linux mkdir用来创建目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。

1、命令格式

mkdir 【选项】【文件名】

2、命令参数

使用帮助命令:man mkdir或mkdir -help

-m --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask

-p --parents 递归创建目录

-v, --verbose 每次创建新目录都显示信息

--help 显示此帮助信息并退出

--version 输出版本信息并退出

touch

Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。

cp

Linux cp命令主要用于复制文件或目录。

语法

cp [options] source dest

cp [options] source... directory

rm

Linux rm命令用于删除一个文件或者目录。

语法

rm [options] name...

参数

  • -i 删除前逐一询问确认。
  • -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  • -r 将目录及以下之档案亦逐一删除。

eg

mkdir -p father/son/grandson
cp -r father family (两个目录)
rm -f test

mv

mv(move or rename files)

mv 源目录文件 目的目录

$ mkdir Documents
$ touch file1
$ mv file1 Documents

将文件“ file1 ”重命名为“ myfile ”:

mv 旧的文件名 新的文件名

$ mv file1 myfile

rename

也可以用来改名(看上去用了正则表达式)

$ cd /home/shiyanlou/

# 使用通配符批量创建 5 个文件:
$ touch file{1..5}.txt

# 批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件:
$ rename 's/\.txt/\.c/' *.txt

# 批量将这 5 个文件,文件名和后缀改为大写:
$ rename 'y/a-z/A-Z/' *.c

文件查看

使用 cattacnl 命令查看文件

前两个命令都是用来打印文件内容到标准输出(终端),其中 cat为正序显示,tac 为倒序显示。

标准输入输出:当我们执行一个 shell 命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),默认对应终端的键盘、标准输出文件(stdout)和标准错误输出文件(stderr),后两个文件都对应被重定向到终端的屏幕,以便我们能直接看到输出内容。进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中

cat

cat 命令用于连接文件并打印到标准输出设备上。

使用权限:所有使用者

语法格式:

cat [-AbeEnstTuv] [--help] [--version] fileName

参数说明:

-n 或 --number:由 1 开始对所有输出的行数编号。

-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。

-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行结束处显示 $。

-T 或 --show-tabs: 将 TAB 字符显示为 ^I。

-A, --show-all:等价于 -vET。

-e:等价于"-vE"选项;

-t:等价于"-vT"选项;

nl

nl 命令,添加行号并打印,这是个比 cat -n 更专业的行号打印命令。

这里简单列举它的常用的几个参数:

-b : 指定添加行号的方式,主要有两种:
    -b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)
    -b t:只列出非空行的编号并列出(默认为这种方式)
-n : 设置行号的样式,主要有三种:
    -n ln:在行号字段最左端显示
    -n rn:在行号字段最右边显示,且不加 0
    -n rz:在行号字段最右边显示,且加 0
-w : 行号字段占用的位数(默认为 6 位)

more

Linux more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。

语法
more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

参数

  • -num 一次显示的行数
  • -d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
  • -l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
  • -f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
  • -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
  • -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
  • -s 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
  • +/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
  • +num 从第 num 行开始显示
  • fileNames 欲显示内容的文档,可为复数个数
实例

逐页显示 testfile 文档内容,如有连续两行以上空白行则以一行空白行显示。

more -s testfile

从第 20 行开始显示 testfile 之文档内容。

more +20 testfile

less与more相似(但是似乎比more更高级一点)

你可能感兴趣的:(linux文件命令)