Linux常用命令

1,命令基本格式
2,文件处理命令
3,文件搜索命令
4,帮助命令
5,压缩与解压缩命令
6,关机与重启命令
7,其他常用命令

root登录用户
localhost 主机名
~ 当前所在目录 家目录

pwd 家目录

-rw -r —r —
-文件类型(-文件 d目录 |软链接文件)

rw- r— r—

u所有者 g所属组 o其他人

r读 w写 x执行

建立目录

递归

mkdir -p

cd ~家目录

简化操作:

cd ~ 进入当前用户的家目录

cd

cd - 进入上次目录

cd ..进入上一级目录

cd . 进入当前目录

相对路径:参照当前所在目录,进行查找

如: [root@imooc ~]# cd ../usr/local/src/

绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置

如:[root@imooc ~]# cd /etc/

删除目录

rmdir

touch abc

rm -rf 强制删除

-r 删除目录

-f 强制

复制命令:cp

cp [选项] [原文件或目录] [目标目录]

-r复制目录

-p连带文件属性复制

-d若源文件是链接文件,则复制链接属性

-a相当于-pdr (所有内容都一样)

剪切或改名命令:mv

mv [原文件或目录] [目标目录]


常用目录的作用

/ 根目录

/bin 命令保存目录

/boot 启动目录、启动相关文件

/dev 设备文件保存目录

/etc 配置文件保存目录

/home 普通用户的家目录

/lib 系统库保存目录

/mnt 系统挂载目录

/media 挂载目录

根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的

/root 超级用户的家目录

/tmp 临时目录

/sbin命令保存目录(超级用户才能使用的目录)

/proc直接写上内存的

/sys

/usr 系统软件资源目录

/usr/bin/系统命令(普通用户)

/usr/sbin/系统命令(超级用户)

/var 系统相关文档内容


链接命令

ln -s [原文件] [目标文件]

硬链接特征

1,拥有相同的i节点和存储block块,可以看做是同一个文件

2,可通过i节点识别 ls -i

3,不能跨分区

4,不能针对目录使用

软链接特征:

1,类似Windows快捷方式

2,软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点好,并没有实际的文件数据

3,lrwxrwxrwx l 软链接

软链接文件权限都为rwxrwxrwx

4,修改任意文件,另一个都改变

5,删除原文件,软链接不能使用

软链接 原文件需要绝对路径


Linux中文件搜索命令locale

文件搜索命令locate

命令搜索命令whereis与which

文件搜索命令find

字符串搜索命令grep

find命令与grep命令的区别

locate命令格式

locate文件名

在后台数据库中按文件名搜索,搜索速度很快

/var/lib/mlocate

locate命令所搜索的后台数据库 (每天更新)

updatedab

更新数据库

/etc/updatedb.conf 配置文件

locate速度快但只能按文件名搜索

搜索命令的命令whereis

搜索命令所在路径及帮助文档所在位置

选项:

-b:只查找可执行文件

-m:只查找帮助文件

which可看到别名

系统环境命令:

echo $PATH

find [搜索范围] [搜索条件]

搜索文件

find / -name install.log

避免大规模搜索,会非常耗费系统资源

find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配

Linux中的通配符

*匹配任意内容

?匹配任意一个字符

[]中括号匹配任意一个中括号内的字符

find /root -iname install.log

不区分大小写

find /root -user root

按照所有者搜索

find /root -nouser

查找没有所有者的文件

find /var/log/ -mtime +10

查找10天前修改的文件

-10 10天内修改的文件

10 10当天修改的文件

+10 10前修改的文件

atime 文件访问时间

ctime改变文件属性

mtime修改文件内容

find . -size 25k

find . -size 25M

查找当前目录(.)文件大小是25k的文件

-25k 小于25k的文件

25k 等于25k的文件

+25k 大于25k的文件

find . -inum 262422

查找i节点是26422的文件

ls -i i节点

find /etc -size +20k -a -size -1M

查找/etc/目录下,大于20kb并且小于1Mb的文件

-a and 逻辑与,两个条件都满足

-o or 逻辑或,两个条件满足一个即可

find /etc -size +20k -a -size -1M -exec ls -lh {} ;

查找/etc/目录下,大于20kb并且小于1Mb的文件,并显示详细信息

-exec/-ok 命令{} ; 对搜索结果执行操作

比如找到文件并删除

find /root -inum 262421 -exec rm -rf {} ;

字符串搜索grep

grep [选项] 字符串 文件名

在文件当中匹配符合条件的字符串

选项:

-i 忽略大小写

-v 排除指定字符串

find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。

grep命令:在文件中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式时包含匹配


帮助命令man

帮助命令

man 命令

获取指定命令的帮助

man ls

查看ls的帮助

man -f 命令

相当于

whatis 命令

shell内部命令帮助

help shell内部命令

获取shell内部命令的帮助

例如:

whereis cd

确定是否是shell内部命令 没有可执行文件 就是shell自带的

help cd

获取内部命令帮助


压缩有解压缩命令

常用压缩格式:.zip .gz .bz2 .tar.gz .tar.bz2

zip 压缩文件名 源文件

压缩文件

zip -r 压缩文件名 源目录

压缩目录

unzip压缩文件

.gz格式压缩

gzip源文件

gzip 源文件

压缩为.gz格式的压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件

压缩为.gz格式,源文件保留

gzip -r 目录

压缩目录下所有的子文件,但是不能压缩目录

gzip -d 压缩文件

解压缩文件

gunzip 压缩文件

解压缩文件

bz2压缩方法或命令 同 gzip

打包命名tar

tar -cvf 打包文件名 源文件

选项:

-c:打包

-v:显示过程

-f:指定打包后的文件名

例如:

tar -cvf longzls.tar longzls

目录,先打包再压缩

解打包命令

tar -xvf 打包文件名

选项:

-x:解大包

例如:

tar -xvf longzls.tar

tar -zcvf 压缩包名.tar.gz 源文件

选项:

-z:压缩为.tar.gz格式

tar -zxvf 压缩名.tar.gz

选项:

-x:解压缩.tar.gz格式

压缩多个文件 空格隔开


1,shutdown命令

[root@localhost ~] # shutdown [选项] 时间

选项:

-c:取消前一个关机命令

-h:关机

-r:重启

2,其他关机命令

halt

poweroff

init 0

不保存数据

3,其他重启命令

reboot

init 6

4,系统运行级别

0,关机

1,单用户

2,不完全用户,不含nfs服务

3,完全多用户

4,未分配

5,图形界面

6,重启

run level

5,退出登录命令

logout


挂载命令

用户登录查看和用户交互命令

1,查询与自动挂载

[root@localhost ~] # mount

查询系统中已经挂载的设备

[root@localhost ~] # mount -a

以及配置文件/etc/fstab的内容,自动挂载

2,挂载命令格式

mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点

选项:

-t 文件系统:加入文件类型系统来指定挂载的类型,可以ext3、ext4、iso9660等文件系统

-o 特殊选项:可以指定挂载的额外选项

例如:

exec/noexec 执行/不执行,设定是否允许在文件系统中执行可执行的文件,默认是exec允许

rw/ro 读写/只读,文件系统挂载时,是否具有读写权限,默认是rw

3,挂载光盘

mkdir /mnt/cdrom/

建立挂载点

mount -t iso 9660 /dev/cdrom /mnt/cdrom

挂载光盘

mount /dev/sr0 /mnt/cdrom/

挂载光盘

sr0或cdrom

4,卸载命令

unmount /mnt/cdrom/

5,挂载u盘

fdisk -l

查看U盘设备文件名

mount -t vfat /dev/sdb1 /mnt/usb/

注意:Linux默认是不支持NTFS文件系统的

fdisk -l


查看登录用户信息

[root@localhost ~] # w

w

命令输出:

USER:登录的用户名

TTY:登录终端

FROM:从哪个IP地址登录

LOGIN@:登录时间

IDLE:用户闲置时间

JCPU;指的是和改终端连接的所有进程中占用的时间。这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间。

PCPU:是指当前进程所占用的时间;

WHAT:当前正在运行的命令

[root@localhost ~] # who

[root@localhost ~] # last

默认是读取/var/log/wtmp文件数据

系统中所有登录的信息

[root@localhost ~] # lastlog

查看所有用户的最后一次登录时间

默认是读取/var/log/lastlog文件数据


Shell基础

一,shell概述

二,脚本执行方式

三,bash的基本功能

1,shell是什么

shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统程序,用户也用shell来启动、挂起、停止甚至是编写一些程序。

shell还是一个功能相当强大的编程语言、易编写、易调试,灵活性强。shell是解释执行的脚本语言,在shell中可以直接调用Linux系统命令

shell的两种主要语法类型有Bourne和C,这两种语法彼此不兼。Bourne家族主要包括sh、ksh、Bash、psh、zsh;C家族主要包括:csh、tcsh

看自己的shell是哪个

echo $SHELL

二,基本执行

1,echo输出命令

echo [选项] [输出内容]

选项:

-e:支持反斜线控制的字符转换

2,第一个脚本

3,脚本执行

赋予执行权限,直接运行

chmod 755 hello.sh

./hello.sh

通过Bash调用执行脚本

bash hello.sh


alias

别名永久生效与删除别名

vi ~/.bashrc

写入环境变量配置文件

unalias 别名

删除别名

source .bashrc

立即生效

命令生效顺序

第一顺位执行用绝对路径或相对路径执行的命令

第二顺位执行别名

第三顺位执行bash的内部命令

第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令


常用快捷键

ctrl+c 强制终止当前命令

ctrl+l 清屏

ctrl+a 光标移动到命令行行首

ctrl+e 光标移动到命令行行尾

ctrl+u 从光标所在位置删除行首

ctrl+z 把命令放入后台

ctrl+r 在历史命令中搜索

1,历史命令

history [选项] [历史命令保存文件]

选项:

-c:清空历史命令

-w:把缓存中的历史命令写入历史命令保存文件 ~/.bash_history

文件中和 history展示的并不一样

history -w 强制写入 ~/.bash_history

历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改

HISTSIZE=10000

历史命令的调用:

使用上下箭头调用以前的历史命令

使用 !n 重复执行第n条历史命令

使用!! 重复执行上一条命令

使用!字符串 重复执行最后条以该字符串开头的命令


标准输入输出

键盘 /dev/stdin 0

显示器 /dev/sdtout 1

显示器 /dev/stderr 2

2,输出重定向

命令 > 文件 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中

命令 >> 文件 以追加的方式,把命令的正确输出输出到指定的文件或设备当中

错误命令 2>文件 以覆盖的方式,把命令的错误输出输出到指定的文件或设备中

错误命令 2>>文件 以追加的方式,把命令的错误输出输出到指定的文件或设备中

正确输出和错误输出同时保存

命令 > 文件 2 >&1

命令 >> 文件2>&1

命令 &>文件

命令 &>>文件

命令 >>文件1 2>> 文件2 把正确的输出追加到文件1中,把错误的输出追加到文件2中

3,输入重定向

[root@localhost ~] # wc [选项] [文件名]

选项:

-c统计字节数

-w统计单词数

-l统计行数


管道符:

1,多命令顺序执行

; 命令1;命令2

多个命令顺序执行,命令直接没有任何逻辑关系

&& 命令1&&命令2

逻辑与 当命令1正确执行,则命令2才会执行;当命令1执行不正确,则命令2不会执行

|| 命令1||命令2

逻辑或 当命令1执行不正确,则命令2才会执行;当命令1正确执行,则命令2才会执行

利用正确输出后 输出yes 判断执行成功与否

ls && echo yes || echo no

2,管道符

命令格式:

命令1 | 命令2

命令1的正确输出作为命令2的操作对象

eg:

ls -l /etc/ | more

对结果分屏显示

eg:

netstat -an | grep ESTABLISHED

判断服务器上多少客户端在连接


1,通配符

? 匹配一个任意字符

*匹配0个或任意多个字符

[]匹配括号中任意一个字符

[-]匹配括号中任意一个字符,-代表一个范围

[^]逻辑非,表示匹配不是括号中的一个字符

ls dzp*

2,bash中其他特殊符号

’’ 单引号,在单引号中所有的特殊符号,如“$”和“`”都没有特殊含义

“”双引号,在双引号中特殊符号都没有特殊含义,但是“$”、“`”和“\”是例外,拥有“调用变量的值”、“引用命令”和”转义符“的特殊含义

``反引号,括起来的内容是系统命令,在bash中会先执行它。和$()作用一样

$() 和反引号作用一样,用来引用系统命令。

$ 用于调用变量的值

\ 转义符,跟踪\之后的特殊符号将失去特殊含义


直接覆盖原来的文件?

使用ssh命令行传输文件到远程服务器

1,上传本地文件到服务器

scp /path/filename username@servername:/path/

例如scp /var/www/test.php [email protected]:/var/www/

把本机/var/www/目录下的test.php文件上传到这台服务器上的/var/www/目录中

2,从服务器上下载文件

下载文件我们经常使用wget,但是如果没有http服务,如何从服务器上下载文件呢?

scp username@servername:/path/filename /var/www/local_dir

例如scp [email protected]:/var/www/test.txt /var/www/local_dir

3,从服务器下载整个目录

scp -r username@servername:/var/www/remote_dir/ /var/www/local_dir

4,上传目录到服务器

scp -r local_dir username@servername:remote_dir

scp -r /Users/xhzh/yxFiles/pythonProj/CFlaskProj [email protected]:/root/zhxh_proj


ModuleNotFoundError: No module named 'flask_sqlalchemy'
1,命令基本格式

2,文件处理命令

3,文件搜索命令

4,帮助命令

5,压缩与解压缩命令

6,关机与重启命令

7,其他常用命令

image.png

root登录用户

localhost 主机名

~ 当前所在目录 家目录

pwd 家目录

-rw -r —r —

-文件类型(-文件 d目录 |软链接文件)

rw- r— r—

u所有者 g所属组 o其他人

r读 w写 x执行

建立目录

递归

mkdir -p

cd ~家目录

简化操作:

cd ~ 进入当前用户的家目录

cd

cd - 进入上次目录

cd ..进入上一级目录

cd . 进入当前目录

相对路径:参照当前所在目录,进行查找

如: [root@imooc ~]# cd ../usr/local/src/

绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置

如:[root@imooc ~]# cd /etc/

删除目录

rmdir

touch abc

rm -rf 强制删除

-r 删除目录

-f 强制

复制命令:cp

cp [选项] [原文件或目录] [目标目录]

-r复制目录

-p连带文件属性复制

-d若源文件是链接文件,则复制链接属性

-a相当于-pdr (所有内容都一样)

剪切或改名命令:mv

mv [原文件或目录] [目标目录]


常用目录的作用

/ 根目录

/bin 命令保存目录

/boot 启动目录、启动相关文件

/dev 设备文件保存目录

/etc 配置文件保存目录

/home 普通用户的家目录

/lib 系统库保存目录

/mnt 系统挂载目录

/media 挂载目录

根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的

/root 超级用户的家目录

/tmp 临时目录

/sbin命令保存目录(超级用户才能使用的目录)

/proc直接写上内存的

/sys

/usr 系统软件资源目录

/usr/bin/系统命令(普通用户)

/usr/sbin/系统命令(超级用户)

/var 系统相关文档内容


链接命令

ln -s [原文件] [目标文件]

硬链接特征

1,拥有相同的i节点和存储block块,可以看做是同一个文件

2,可通过i节点识别 ls -i

3,不能跨分区

4,不能针对目录使用

软链接特征:

1,类似Windows快捷方式

2,软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点好,并没有实际的文件数据

3,lrwxrwxrwx l 软链接

软链接文件权限都为rwxrwxrwx

4,修改任意文件,另一个都改变

5,删除原文件,软链接不能使用

软链接 原文件需要绝对路径


Linux中文件搜索命令locale

文件搜索命令locate

命令搜索命令whereis与which

文件搜索命令find

字符串搜索命令grep

find命令与grep命令的区别

locate命令格式

locate文件名

在后台数据库中按文件名搜索,搜索速度很快

/var/lib/mlocate

locate命令所搜索的后台数据库 (每天更新)

updatedab

更新数据库

/etc/updatedb.conf 配置文件

locate速度快但只能按文件名搜索

搜索命令的命令whereis

搜索命令所在路径及帮助文档所在位置

选项:

-b:只查找可执行文件

-m:只查找帮助文件

which可看到别名

系统环境命令:

echo $PATH

find [搜索范围] [搜索条件]

搜索文件

find / -name install.log

避免大规模搜索,会非常耗费系统资源

find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配

Linux中的通配符

*匹配任意内容

?匹配任意一个字符

[]中括号匹配任意一个中括号内的字符

find /root -iname install.log

不区分大小写

find /root -user root

按照所有者搜索

find /root -nouser

查找没有所有者的文件

find /var/log/ -mtime +10

查找10天前修改的文件

-10 10天内修改的文件

10 10当天修改的文件

+10 10前修改的文件

atime 文件访问时间

ctime改变文件属性

mtime修改文件内容

find . -size 25k

find . -size 25M

查找当前目录(.)文件大小是25k的文件

-25k 小于25k的文件

25k 等于25k的文件

+25k 大于25k的文件

find . -inum 262422

查找i节点是26422的文件

ls -i i节点

find /etc -size +20k -a -size -1M

查找/etc/目录下,大于20kb并且小于1Mb的文件

-a and 逻辑与,两个条件都满足

-o or 逻辑或,两个条件满足一个即可

find /etc -size +20k -a -size -1M -exec ls -lh {} ;

查找/etc/目录下,大于20kb并且小于1Mb的文件,并显示详细信息

-exec/-ok 命令{} ; 对搜索结果执行操作

比如找到文件并删除

find /root -inum 262421 -exec rm -rf {} ;

字符串搜索grep

grep [选项] 字符串 文件名

在文件当中匹配符合条件的字符串

选项:

-i 忽略大小写

-v 排除指定字符串

find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。

grep命令:在文件中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式时包含匹配


帮助命令man

帮助命令

man 命令

获取指定命令的帮助

man ls

查看ls的帮助

man -f 命令

相当于

whatis 命令

shell内部命令帮助

help shell内部命令

获取shell内部命令的帮助

例如:

whereis cd

确定是否是shell内部命令 没有可执行文件 就是shell自带的

help cd

获取内部命令帮助


压缩有解压缩命令

常用压缩格式:.zip .gz .bz2 .tar.gz .tar.bz2

zip 压缩文件名 源文件

压缩文件

zip -r 压缩文件名 源目录

压缩目录

unzip压缩文件

.gz格式压缩

gzip源文件

gzip 源文件

压缩为.gz格式的压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件

压缩为.gz格式,源文件保留

gzip -r 目录

压缩目录下所有的子文件,但是不能压缩目录

gzip -d 压缩文件

解压缩文件

gunzip 压缩文件

解压缩文件

bz2压缩方法或命令 同 gzip

打包命名tar

tar -cvf 打包文件名 源文件

选项:

-c:打包

-v:显示过程

-f:指定打包后的文件名

例如:

tar -cvf longzls.tar longzls

目录,先打包再压缩

解打包命令

tar -xvf 打包文件名

选项:

-x:解大包

例如:

tar -xvf longzls.tar

tar -zcvf 压缩包名.tar.gz 源文件

选项:

-z:压缩为.tar.gz格式

tar -zxvf 压缩名.tar.gz

选项:

-x:解压缩.tar.gz格式

压缩多个文件 空格隔开


1,shutdown命令

[root@localhost ~] # shutdown [选项] 时间

选项:

-c:取消前一个关机命令

-h:关机

-r:重启

2,其他关机命令

halt

poweroff

init 0

不保存数据

3,其他重启命令

reboot

init 6

4,系统运行级别

0,关机

1,单用户

2,不完全用户,不含nfs服务

3,完全多用户

4,未分配

5,图形界面

6,重启

run level

5,退出登录命令

logout


挂载命令

用户登录查看和用户交互命令

1,查询与自动挂载

[root@localhost ~] # mount

查询系统中已经挂载的设备

[root@localhost ~] # mount -a

以及配置文件/etc/fstab的内容,自动挂载

2,挂载命令格式

mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点

选项:

-t 文件系统:加入文件类型系统来指定挂载的类型,可以ext3、ext4、iso9660等文件系统

-o 特殊选项:可以指定挂载的额外选项

例如:

exec/noexec 执行/不执行,设定是否允许在文件系统中执行可执行的文件,默认是exec允许

rw/ro 读写/只读,文件系统挂载时,是否具有读写权限,默认是rw

3,挂载光盘

mkdir /mnt/cdrom/

建立挂载点

mount -t iso 9660 /dev/cdrom /mnt/cdrom

挂载光盘

mount /dev/sr0 /mnt/cdrom/

挂载光盘

sr0或cdrom

4,卸载命令

unmount /mnt/cdrom/

5,挂载u盘

fdisk -l

查看U盘设备文件名

mount -t vfat /dev/sdb1 /mnt/usb/

注意:Linux默认是不支持NTFS文件系统的

fdisk -l


查看登录用户信息

[root@localhost ~] # w

w

命令输出:

USER:登录的用户名

TTY:登录终端

FROM:从哪个IP地址登录

LOGIN@:登录时间

IDLE:用户闲置时间

JCPU;指的是和改终端连接的所有进程中占用的时间。这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间。

PCPU:是指当前进程所占用的时间;

WHAT:当前正在运行的命令

[root@localhost ~] # who

[root@localhost ~] # last

默认是读取/var/log/wtmp文件数据

系统中所有登录的信息

[root@localhost ~] # lastlog

查看所有用户的最后一次登录时间

默认是读取/var/log/lastlog文件数据


Shell基础

一,shell概述

二,脚本执行方式

三,bash的基本功能

1,shell是什么

shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统程序,用户也用shell来启动、挂起、停止甚至是编写一些程序。

shell还是一个功能相当强大的编程语言、易编写、易调试,灵活性强。shell是解释执行的脚本语言,在shell中可以直接调用Linux系统命令

shell的两种主要语法类型有Bourne和C,这两种语法彼此不兼。Bourne家族主要包括sh、ksh、Bash、psh、zsh;C家族主要包括:csh、tcsh

看自己的shell是哪个

echo $SHELL

二,基本执行

1,echo输出命令

echo [选项] [输出内容]

选项:

-e:支持反斜线控制的字符转换

2,第一个脚本

3,脚本执行

赋予执行权限,直接运行

chmod 755 hello.sh

./hello.sh

通过Bash调用执行脚本

bash hello.sh


alias

别名永久生效与删除别名

vi ~/.bashrc

写入环境变量配置文件

unalias 别名

删除别名

source .bashrc

立即生效

命令生效顺序

第一顺位执行用绝对路径或相对路径执行的命令

第二顺位执行别名

第三顺位执行bash的内部命令

第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令


常用快捷键

ctrl+c 强制终止当前命令

ctrl+l 清屏

ctrl+a 光标移动到命令行行首

ctrl+e 光标移动到命令行行尾

ctrl+u 从光标所在位置删除行首

ctrl+z 把命令放入后台

ctrl+r 在历史命令中搜索

1,历史命令

history [选项] [历史命令保存文件]

选项:

-c:清空历史命令

-w:把缓存中的历史命令写入历史命令保存文件 ~/.bash_history

文件中和 history展示的并不一样

history -w 强制写入 ~/.bash_history

历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改

HISTSIZE=10000

历史命令的调用:

使用上下箭头调用以前的历史命令

使用 !n 重复执行第n条历史命令

使用!! 重复执行上一条命令

使用!字符串 重复执行最后条以该字符串开头的命令


标准输入输出

键盘 /dev/stdin 0

显示器 /dev/sdtout 1

显示器 /dev/stderr 2

2,输出重定向

命令 > 文件 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中

命令 >> 文件 以追加的方式,把命令的正确输出输出到指定的文件或设备当中

错误命令 2>文件 以覆盖的方式,把命令的错误输出输出到指定的文件或设备中

错误命令 2>>文件 以追加的方式,把命令的错误输出输出到指定的文件或设备中

正确输出和错误输出同时保存

命令 > 文件 2 >&1

命令 >> 文件2>&1

命令 &>文件

命令 &>>文件

命令 >>文件1 2>> 文件2 把正确的输出追加到文件1中,把错误的输出追加到文件2中

3,输入重定向

[root@localhost ~] # wc [选项] [文件名]

选项:

-c统计字节数

-w统计单词数

-l统计行数


管道符:

1,多命令顺序执行

; 命令1;命令2

多个命令顺序执行,命令直接没有任何逻辑关系

&& 命令1&&命令2

逻辑与 当命令1正确执行,则命令2才会执行;当命令1执行不正确,则命令2不会执行

|| 命令1||命令2

逻辑或 当命令1执行不正确,则命令2才会执行;当命令1正确执行,则命令2才会执行

利用正确输出后 输出yes 判断执行成功与否

ls && echo yes || echo no

2,管道符

命令格式:

命令1 | 命令2

命令1的正确输出作为命令2的操作对象

eg:

ls -l /etc/ | more

对结果分屏显示

eg:

netstat -an | grep ESTABLISHED

判断服务器上多少客户端在连接


1,通配符

? 匹配一个任意字符

*匹配0个或任意多个字符

[]匹配括号中任意一个字符

[-]匹配括号中任意一个字符,-代表一个范围

[^]逻辑非,表示匹配不是括号中的一个字符

ls dzp*

2,bash中其他特殊符号

’’ 单引号,在单引号中所有的特殊符号,如“$”和“`”都没有特殊含义

“”双引号,在双引号中特殊符号都没有特殊含义,但是“$”、“`”和“\”是例外,拥有“调用变量的值”、“引用命令”和”转义符“的特殊含义

``反引号,括起来的内容是系统命令,在bash中会先执行它。和$()作用一样

$() 和反引号作用一样,用来引用系统命令。

$ 用于调用变量的值

\ 转义符,跟踪\之后的特殊符号将失去特殊含义


直接覆盖原来的文件?

使用ssh命令行传输文件到远程服务器

1,上传本地文件到服务器

scp /path/filename username@servername:/path/

例如scp /var/www/test.php [email protected]:/var/www/

把本机/var/www/目录下的test.php文件上传到这台服务器上的/var/www/目录中

2,从服务器上下载文件

下载文件我们经常使用wget,但是如果没有http服务,如何从服务器上下载文件呢?

scp username@servername:/path/filename /var/www/local_dir

例如scp [email protected]:/var/www/test.txt /var/www/local_dir

3,从服务器下载整个目录

scp -r username@servername:/var/www/remote_dir/ /var/www/local_dir

4,上传目录到服务器

scp -r local_dir username@servername:remote_dir

scp -r /Users/xhzh/yxFiles/pythonProj/CFlaskProj [email protected]:/root/zhxh_proj


ModuleNotFoundError: No module named 'flask_sqlalchemy'

你可能感兴趣的:(Linux常用命令)