Linux命令行基础

时间:2021-05-22 17:42:50

Linux模仿了unix的使用习惯

Shell

用于运行系统指令的程序

可以调用系统中其他的系统指令

指令组合在一起可以做成脚本来执行

最初的shellBourne Shell(贝尔实验室)

最常用的shellbourne-again Shell(简称Bash)

通常称为终端

命令提示符

name@hostpath$    普通用户

name@hostpath#    root用户

基本Shell命令

cat 用来显示文件里的内容(合并显示多个文件内容)

输入输出

 

标准输入输出称为stdin/stdout

第三标准流stderr

Ctrl-D 结束当前输入

Ctrl-C 无论当前情况强制结束

Bash提供按tab进行字母补齐

ls

列出当前目录

 

-l

详细内容(权限,inode,属主,属组,大小,修改时间)

 

-a

显示包括隐藏内容

 

-d

只显示目录自身信息

 

-i

显示inode信息

 

-S

按文件大小排序

 

-r

倒序排序

 

-t

按修改时间排序

 

-h

文件大小以能看得懂的方式显示

ll

ls -la

cp

拷贝

 

cp file1 file2 

 

cp file1 file2 dir/

 

-R/r

拷贝目录及其中全部内容

 

-l

硬链接拷贝(ls -li

 

-s

软链接拷贝

 

-S

目标名后面加后缀

 

-u

源比目标新时拷贝

mv

移动

 

mv file1 file2

 

mv file1 file2 dir/

 

-f

强制移动、覆盖目标

touch

创建空文件

 

若文件名已存在,不修改内容,修改文件mtime

 

touch file

rm

删除

 

rm file

 

rm -rf dir/

 

-i

每删除前提醒

 

-d

删除空目录

echo

将命令参数显示在stdout

 

echo “hello word”

 

-n

显示结束不换行

 

-e

解释反斜杠转移符

echo -e a\\nb 

 

echo $HOME

 

 

 

目录结构相关

 Linux命令行基础

 

表示主目录

绝对路径

/开始,目录结束,这样一个完整路径

cd /home/user1/desktop/

相对路径

直接cd当前目录子目录名称

cd desktop/

.

表示当前所在目录

..

上一级目录

mkdir

创建目录

 

-p

可以创建多级目录

cd

切换到目录

rmdir

删除空目录

 

-p

可以删除一系列空目录

 

 

 

通配符

*   所有对象

*1*  文件名包括1的文件

pwd

显示当前完整目录

 

 

-P

物理路径(查看软链接的真实路径)

 

-L

逻辑路径

grep

抓取需要的内容的那一行

 

grep root /etc/passwd

 

grep r* /etc/passwd

 

grep root /etc/*

 

-i

忽略大小写

 

-v

反向匹配

 

-n

显示行号

 

-r

递归目录及子目录中所有文件

 

-c

显示目标文件包含关键词的行数

 

grep -f 1.txt 2.txt   1.txt中的多个关键字同时匹配

 

grep a[123] a.txt 同时匹配a1a2a3

 

grep -E ‘1|2|3’ a.txt 或者1或者2或者3

less

每次一页显示输出内容

 

快捷键

 

 

z/b

向前/向后翻页

 

v

进入编辑模式

 

g/G

直接跳到第一行/最后一行

 

/word

向前搜索关键词

 

word

向后搜索关键词

 

n/N

正向/反向继续搜索关键词

 

q

退出

head

显示文件头部内容(默认显示前十行)

 

-n

n是指定行数

tail

显示文件尾部内容(默认显示十行)

 

-n

n是制定行数

 

-f

实时显示尾部内容==tailf

diff

比较文本文件

 

diff a b   

 

a-add,文件21多,c-change,内容不同,d-delete文件12

 

-u

统一格式输出(---文件1+++文件2

 

-y

并排输出比较(|,不同,<,文件1>,文件2

 

-w

忽略空格

 

-i

忽略大小写

 

也可以用来比较文件夹

file

检测文件格式

 

顺序执行三种测试集

filesystem:匹配系统头文件<sys/stat.h>

magic:匹配文件头部魔术值, -l 参数查看

language:匹配文件起始的字符 类型,ASCII, UTF-8

一种测试匹配即停止检测,全都不匹配返回 data

 

-f

文件列表

 

-ib

Mime类型

locate

基于文件索引进行搜索

 

速度快但是不准确

 

updatedb

更新索引

find

搜索文件

 

find / -name abc*.txt

 

find . -type b c d f |

 

find . -user user1

 

find . -mtime +1 -mtime -20atimectimeaminmmincmin

 

-cnewer file

查找比这个文件更新的文件

stat

查看文件的详细信息

 

其中

Access:访问时间

Modify:修改时间

Change:修改权限时间

sort

排序

 

-r

反向排序

 

-n

按照数值大小排序

 

-M

 

按照月份排序(‘JAN’----‘DEC’

 

ls -l --sort=key

 

 

 

 

 

 

 

 

 

命令行快捷键

CTRL-b

向左

CTRL-f

向右

CTRL-p

向上

CTRL-n

向下

CTRL-a

光标至行首

CTRL-e

光标至行尾

CTRL-w

删除光标前到空格的内容

CTRL-u

删除光标到行首

CTRL-k

删除光标到行首

CTRL-y

粘贴最近一次删掉的内容(最近一次删掉的内容在复制里面)

Linux 所有对向都是文件

运行中的文件叫做进程