" name="sm-site-verification"/>
侧边栏壁纸
博主头像
PySuper博主等级

千里之行,始于足下

  • 累计撰写 203 篇文章
  • 累计创建 14 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Linux 命令行

PySuper
2019-10-28 / 0 评论 / 0 点赞 / 18 阅读 / 18566 字
温馨提示:
所有牛逼的人都有一段苦逼的岁月。 但是你只要像SB一样去坚持,终将牛逼!!! ✊✊✊

Linux指令

命令 作用
ls 查看当前文件夹下的内容
pwd 当前所在文件夹
touch [文件名] 如果文件不存在,新建文件
mkdir [目录名] 创建目录
cd [目录名] 切换文件夹
cp [文件名] 拷贝指定的文件
mv [文件名] 移动指定的文件
tree [目录名] 以树状方式显示目录结构
clear 清屏
rm [文件名] 删除指定文件

ctrl + shift + 放大终端窗口的字体显示

ctrl + - 缩小终端窗口的字体显示

不想执行当前选中的命令, 可以按 ctrl + c

cd

命令 含义
cd 切换到当前用户的主目录(/home/用户目录),用户登陆的时候,默认的目录就是用户的主目录。
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 切换到当前目录
cd … 切换到上级目录
cd - 可进入上次所在的目录

绝对路径

/ 开始的路径

相对路径

从当前目录算起的路径

终端命令

命令格式

command [-options] [parameter]

command: 命令表示做什么

options: 选项, 选项表示怎么做, 也可以省略

parameter: 传给命令的参数, 参数表示对谁做. 可以是零个一个或者 多个.

[ ] 表示可选

帮助信息

命令的 --hel选项 : command --help

man命令: man command

man 时的操作

操作键 功能
空格键 显示手册页的下一屏
Enter 键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索 word 字符串

命令选项

ls 选项

选项 含义
-a 显示指定目录下的隐藏文件, 以点(.)开头的文件为隐藏文件.
-l 以列表方式显示文件的详细信息.
-h 配合 -l 显示文件大小单位.

mkdir 选项

mkdir 命令可以创建一个新的目录. 选项-p 可递归创建目录

选项 含义
-p 创建所依赖的文件夹

rm 选项

选项 含义
-i 以进行交互式方式执行
-f 强制删除,忽略不存在的文件,无需提示
-r 递归地删除目录下的内容,删除文件夹时必须加此参数
-d 删除空目录

cp 选项

将指定的文件目录复制到另一个文件或目录中

选项 含义
-a 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有权限。
-i 交互式复制,在覆盖目标文件之前将给出提示要求用户确认
-r 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
-v 显示拷贝后的路径描述

mv 选项

移动文件或目录, 也可以给文件或目录重命名.

选项 含义
-i 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
-v 显示移动后的路径描述

功能命令

重定向 : >

> 输出重定向会覆盖原来的内容

>>输出重定向则会追加到文件的尾部。

cat

查看或者合并文件内容

gedit文件编辑命令,可以查看和编辑文件

分屏: more

more demo.py

每次只显示一页

空格显示下一页

q 退出

h 获取帮助

管道 |

一个命令的输出可以通过管道做为另一个命令的输入

ifconfig | grep init

链接 : ln

软链接:软链接不占用磁盘空间,源文件删除则软链接失效。ln -s 源文件 链接文件

硬链接:硬链接只能链接普通文件,不能链接目录。ln 源文件 链接文件

没有-s选项代表建立一个硬链接文件,两个文件占用相同大小的硬盘空间,即使删除了源文件,链接文件还是存在,所以-s选项是更常见的形式

如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径

搜索: grep

grep [-选项] ‘搜索内容串’文件名

grep命令中输入字符串参数时,最好引号或双引号括起来 grep 'a' 1.txt

选项 含义
-v 显示不包含匹配文本的所有行(相当于求反)
-n 显示匹配行及行号
-i 忽略大小写

配合正则表达式

参数 含义
^a 行首,搜寻以 m 开头的行;grep -n ‘^a’ 1.txt
ke$ 行尾,搜寻以 ke 结束的行;grep -n ‘ke$’ 1.txt
[Ss]igna[Ll] 匹配 [] 里中一系列字符中的一个;搜寻匹配单词signal、signaL、Signal、SignaL的行;grep -n ‘[Ss]igna[Ll]’ 1.txt
. (点)匹配一个非换行符的字符;匹配 e 和 e 之间有任意一个字符,可以匹配 eee,eae,eve,但是不匹配 ee,eaae;grep -n ‘e.e’ 1.txt

查找:find

用来在特定的目录下搜索符合条件的文件

也可以用来搜索特定用户属主的文件

命令 含义
find ./ -name test.sh 查找当前目录下所有名为test.sh的文件
find ./ -name ‘*.sh’ 查找当前目录下所有后缀为.sh的文件
find ./ -name “[A-Z]*” 查找当前目录下所有以大写字母开头的文件

通配符

一种特殊字符,用来模糊搜索文件

ls, find命令一般会结合通配符使用

  • *:代表0个或多个任意字符
  • ?:代表任意一个字符
  • [列举的字符]:代表的任意一个字符

打包及压缩:tar

tar [选项] 打包文件名 文件
选项 含义
-c 生成档案文件,创建打包文件
-v 列出归档解档的详细过程,显示进度
-f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
-x 解开档案文件
-z 压缩

除了f需要放在参数的最后,其它参数的顺序任意

gz压缩格式

-z:指定压缩包的格式为:file.tar.gz

tar -zcvf 压缩包包名 文件1 文件2 ...

解压:

tar -zxvf 压缩包包名

-z:指定压缩包的格式为:file.tar.gz

解压到指定目录:-C (大写字母“C”)

bz2 压缩格式

  • 压缩用法: tar -jcvf 压缩包包名 文件
  • 解压用法: tar -jxvf 压缩包包名

zip 压缩格式

通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。

压缩文件:zip 目标文件(没有扩展名) 源文件

解压文件:unzip -d 解压后目录文件 压缩文件

权限:chmod

拥有者、同组者以及其他人的权限

字母法

chmod u/g/o/a +/-/= rwx 文件
[ u/g/o/a ] 含义
u user 表示该文件的所有者
g group 表示与该文件的所有者属于同一组( group )者,即用户组
o other 表示其他以外的人
a all 表示这三者皆是

[ ±= ] 含义
+ 增加权限
- 撤销权限
= 设定权限

rwx 含义
r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

数字法

“rwx” 这些权限也可以用数字来代替

字母 说明
r 读取权限,数字代号为 “4”
w 写入权限,数字代号为 “2”
x 执行权限,数字代号为 “1”
- 不具任何权限,数字代号为 “0”

chmod u=rwx,g=rx,o=r filename ==> chmod u=7,g=5,o=4 filename

chmod 754 file:

  • 文件所有者:读、写、执行权限
  • 同组用户:读、执行的权限
  • 其它用户:执行的权限

如果想递归所有目录加上相同权限,需要加上参数“-R ”。

chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限

位置:which

找到命令的路径

which ls

which LSS

管理员账号:sudo -s

一般不需要切换到管理员账户,需要使用管理员权限在命令前面加上sudo

当前用户:whoami

用户密码:passwd

sudo password xxx

退出: exit

关机重启:reboot、shutdown

命令 含义
reboot 重新启动操作系统
shutdown –r now 重新启动操作系统,shutdown会给别的用户提示
shutdown -h now 立刻关机,其中now相当于时间为0的状态
shutdown -h 20:25 系统在今天的20:25 会关机
shutdown -h +10 系统再过十分钟后自动关机

远程操作

登录 SSH

  • 安装ssh服务器
sudo apt-get install openssh-server
  • 远程登陆
ssh 用户名@IP

使用ssh访问,如访问出现错误。

可查看是否有该文件 ~/.ssh/known_ssh 尝试删除该文件解决。

拷贝 scp

  • 安装: sudo apt-get install openssh-server
  • 使用:
scp -r 目标用户名@目标主机IP地址:/目标文件的绝对路径  /保存到本机的绝对/相对路径

eg:
    scp -r itcast@192.168.1.100:/home/itcast/QQ_dir/ ./mytest/lisi

	在后续会提示输入“yes”此时,只能输“yes”而不能简单输入“Y”

拷贝单个文件可以不加 -r参数,拷贝目录必须要加。

  • 本地文件复制到远程:
scp FileName RemoteUserName@RemoteHostIp:RemoteFile
scp FileName RemoteHostIp:RemoteFolder
scp FileName RemoteHostIp:RemoteFile
  • 本地目录复制到远程:
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
scp -r FolderName RemoteHostIp:RemoteFolder
  • 远程文件复制到本地:
scp RemoteUserName@RemoteHostIp:RemoteFile FileName
scp RemoteHostIp:RemoteFolder FileName
scp RemoteHostIp:RemoteFile FileName
  • 远程目录复制到本地:
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
scp -r RemoteHostIp:RemoteFolder FolderName

FileZilla(Linux)

OpenSSH(Windows)

远程连接Ubuntu

安装卸载

软件源

设置软件源

选择网速比较好的版本

备份软件源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

更新服务器列表

下载

sudo apt-get update	# 更新升级(手动更新 sources.list 文件)
apt-get install 	# 下载软件

安装

sudo apt-get update  更新源
sudo apt-get install package 安装包
sudo apt-get remove package 删除包

apt-get

安装

apt-get install PackageName    # 普通安装
apt-get install PackageName=VersionName    # 安装指定包的指定版
apt-get --reinstall install PackageName    # 重新安装
apt-get build-dep PackageName    # 安装源码包所需要的编译环境
apt-get -f install    # 修复依赖关系
apt-get source PackageName    # 下载软件包的源码

卸载

apt-get remove PackageName    # 删除软件包, 保留配置文件
apt-get --purge remove PackageName    # 删除软件包, 同时删除配置文件
apt-get purge PackageName    # 删除软件包, 同时删除配置文件
apt-get autoremove PackageName    # 删除软件包, 同时删除为满足依赖

# 而自动安装且不再使用的软件包
apt-get --purge autoremove PackageName    # 删除软件包, 删除配置文件,

# 删除不再使用的依赖包
apt-get clean && apt-get autoclean    # 清除 已下载的软件包 和 旧软件包

更新

apt-get update    # 更新安装源(Source)
apt-get upgrade    # 更新已安装的软件包
apt-get dist-upgrade    # 更新已安装的软件包(识别并处理依赖关系的改变)

查询

dpkg -l     # 列出已安装的所有软件包
apt-cache search PackageName    # 搜索软件包
apt-cache show PackageName    # 获取软件包的相关信息, 如说明、大小、版本等
apt-cache depends PackageName    # 查看该软件包需要哪些依赖
apt-cache rdepends PackageName    # 查看该软件包被哪些包依
apt-get check    # 检查是否有损坏的依赖

apt-get --help

VIM

vim有三种基本工作模式:

  • 命令模式
  • 编辑模式
  • 末行模式。

插入模式:

i: 插入光标前一个字符 

I: 插入行首 

a: 插入光标后一个字符 

A: 插入行未 

o: 向下新开一行,插入行首 

O: 向上新开一行,插入行首

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区