@TOC
ls命令常见用法
1、ls 查看当前目录
2、ls -a 查看所有文件(包括隐藏文件)
3、ls -l 查看详细文件
4、ls -lh 以更人性化方式显示文件大小(4096字节--4k)
5、clear 清屏 (快捷键 Ctrl+L)
6、pwd 显示当前工作目录
cd的相关用法
1、cd 默认返回家目录
2、cd ~ 返回家目录
3、cd .. 返回上一级目录
4、cd ../../ 返回上两级目录(可返回多级目录)
5、cd / 返回根目录
6、cd /a 切换到a目录
touch 创建文件
问题:创建一个 test.txt 文件
touch test.txt
注意:
如果文件不存在,可以创建一个空白文件
如果已经存在,可以修改文件的末次修改日期
mkdir 创建目录常见用法
1、mkdir -p a/b/c 一次性创建多级目录(-p表示创建所依赖的文件)
2、mkdir a b c 创建多个同级目录
3、touch 创建文件常见用法:
4、touch info.txt 创建单个文件
5、touch a.txt b.txt 同时创建多个文件
rm 删除文件或目录的常见用法
格式: rm 选项 文件
1、rm -i info.txt 删除文件是给予提示是否删除
2、rm -f info.txt 强制删除
3、rm -r info.txt 递归删除(能把目录的子目录子文件删除)
4、rmdir a 只能删除空目录
5、rm -r info 删除非空或空目录(常用)
cp 拷贝、复制常见用法
格式: cp 选项 原文件 目标文件(就是拷贝放到哪里)
1、cp info.txt a 拷贝info.txt文件放到a目录
2、cp info.txt a/info_tow.txt 拷贝info文件到a目录中并重命名为info_tow.txt
3、cp -r a b 拷贝a目录(非空目录)到b目录中
4、cp -r a b c 同时拷贝a目录 b目录放进c目录中
5、cp -r a b/aa 拷贝a目录到b目录的同时把a重命名为aa放进去b目录
mv 移动到、重命名常见用法:(移动文件夹不用加 -r)
1、mv a b 把a目录移动到b目录
2、mv a.txt b 把a.txt文件移动到b目录
3、mv a.txt b.txt d 同时把a.txt b.txt 文件移动到d目录
4、mv a b c 同时把目录a目录b移动到c目录
5、mv a.txt b/aa.txt 把a.txt移动到b目录的同时把a.txt重命名为aa.txt
6、mv a b/a2 把a目录移动到b目录的同时把a目录重命名为a2
7、tree 查看以树形结构显示
8、history 查看使用过的历史命令
重定向命令 > >> 常见用法
符号解释:> 相当于文件操作中的w写进去 >>相当于a追加进去
1、ls a b > info.txt 把a目录与b目录的内容写进info.txt
2、ls a.txt b.txt > fun.txt 只是把文件a与文件b的文件名写进fun.txt
3、ls a b >> info.txt 把a目录与b目录的内容追加写进info.txt(不会覆盖原有内容)
4、ls a.txt b.txt > fun.txt 只是把文件a与文件b的文件名追加写进fun.txt
5、cat 查看文件内容常见用法:
6、cat a.txt b.txt > tow.txt 把文件a与文件b里的内容写进tow文件中
通配符的使用
1、* 代表任意个数个字符
2、? 代表任意一个字符,至少一个
3、[] 表示可以匹配字符族中的任意一个
4、[abc] 匹配a、b、c中的任意一个
5、[a-f] 匹配从a到f范围内的任意一个字符
more 分屏显示文件内容(此文件内容非常多的情况下)
1、more a.txt
最先显示的是第一屏幕的内容
空格: 显示下一屏内容
回车: 显示下一行
数字+回车 : 指定接下来的显示行数
b: 显示上一屏
q: 退出
其他:
ctrl+alt+T 打开终端
ctrl+shift+ "+" 放大字体窗口
ctrl+ "-" 缩小字体窗口
tab 自动补全
ctrl+C 终止终端的命令(或者程序)的执行
which 命令可以查看命令所在的位置
which python3 查询某个软件的路径(python3 的路径)
小练习:
1、在桌面创建test目录 (切换到桌面目录)
cd Desktop 切换到桌面目录
mkdir test 桌面创建test目录
2、拷贝/opt/sublime_text目录下的文件,到桌面这个test目录中 (*是通配符)
(注意只拷贝文件,不复制目录) cp /opt/sublime_text/* ./test
| : 管道命令
1、管道:一个命令的输出可以通过管道作为另一个命令的输入
问题1:用tree命令查看根目录的内容,且分屏显示
tree / | more
2、ln: 链接命令
格式:ln [选项] 目标 链接名
选项 -s 用于创建软链接
问题1:在桌面创建一个01.txt文件,对该文件创建软链接01_s_link.txt
touch 01.txt
ln -s 01.txt 01_s_link.txt
问题2:对01.txt文件创建硬链接01_link.txt
ln 01.txt 01_link.txt
软链接与硬链接的相同点和区别:
1. 软链接和硬链接最终都指向同一个文件
2. 当源文件名删除,软链接变成无效链接,而硬链接还可以打开源文件内容
3. 文件详细列表显示时,软链接的文件类型是l ,而硬链接是-
4. (注意)软链接可以链接文件和目录,而硬连接只能链接文件
grep:查找文本
格式:grep [选项] '搜索内容串' 文件名
选项:
-i: 不区分大小写
-n: 显示匹配行的行号
-v: 显示不匹配的行(取反)
问题1:把家目录中的文件信息写入桌面的home.txt中,然后查找'd'字符
(操作目录在桌面)
ls ~ > home.txt
grep 'd' home.txt
问题2:指定查找以'd'字符开头的文本信息 (^)
grep '^d' home.txt
问题3:指定查找以's'字符结尾的的文本信息 ($)
grep 's$' home.txt
问题4:指定查找'l任意字符a'字符的文本信息 (.)
grep 'l.a' home.txt
grep除了上面的格式,另外,还配合管道|使用:cat xxx.txt | grep "s" 表示xxx.txt中查找"s"
问题5:查看mysql是否运行(ps -aux 可以查看此刻已经启动的进程)
ps -aux | grep "mysql"
find: 查找文件
格式: find [路径] -name [匹配规则]
问题1:查找test目录中名字为sublime.py的文件
(操作目录在桌面) find ./test -name 'sublime.py'
问题2:查找test目录中扩展名是py的文件 ('*.py')
(操作目录在桌面) find ./test -name '*.py'
问题3:在桌面创建一个a.py文件,然后查找桌面及其子目录中名字只有一个字符的python文件 ('?.py')
(操作目录在桌面) touch a.py
(操作目录在桌面) find ./ -name '?.py'
查看文件内容
cat 文件名.后缀 查看文件内容
chmod: 对文件或文件夹设置权限
a. 字母法
格式: chmod u/g/o/a/ +/-/= rwx 文件(顺序不要颠倒,先设置权限,再指定文件)
问题1:对test目录下的sublime.py文件的拥有者用户及同组用户添加执行权限,对其他用户添加写权限
chmod u+x,g+x,o+w sublime.py
问题2:对test目录下的sublime.py同组用户移除执行权限,对其他用户设置无权限
chmod g-x,o= sublime.py
b. 数字法
格式:chmod 权限数字表示法 文件名
问题3:对test目录的sublime.py所有用户均设置读写执行权限
chmod 777 sublime.py
tar: 压缩和解压缩命令
压缩格式: tar [选项] 打包压缩成的文件名 要打包压缩的文件
解压缩格式: tar [选项] 要解压缩的文件名 [-C 解压到指定路径]
选项:
1. c: 创建打包压缩文件
2. v: 显示打包的文件名称
3. f: 指定打包的文件名称
4. x: 解包解压
5. z: 以gzip压缩或者解压文件
6. j: 以bzip2压缩或者解压文件
7. C: 解压到指定路径, -C选项后面解压后存放文件的目录
问题1: 对test目录下的所有文件以gzip格式压缩成 my.tar.gz文件
(当前目录是test目录) tar -czvf my.tar.gz ./*
问题2: 对my.tar.gz解压
rm !(my.tar.gz)
tar -xzvf my.tar.gz
问题3: 对test目录下的所有文件以bzip2格式压缩成 my.tar.bz2文件
tar -cjvf my.tar.bz2 ./*
问题4: 对my.tar.bz2 解压到桌面到的test2目录中
(当前目录是test目录) tar -xjvf my.tar.bz2 -C ../test2
zip和unzip: 压缩成.zip格式文件 和解压.zip格式文件
压缩格式: zip 要压缩成的文件名 要打包压缩的文件
解压缩格式: unzip 要解压缩的文件名 [-d 解压到指定路径]
问题1: 对test2目录下所有文件压缩成my.zip
(当前目录是test2目录) zip my.zip ./*
问题2:解压缩my.zip到桌面test3目录
(当前目录是test2目录) unzip my.zip -d ../test3
其他命令
a. whoami: 查看当前用户
b. sudo -s 切换到超级用户 (su root)
再输入当前用户(python)的密码,就可以切换到超级用户
c. exit: 退出登录
d. passwd: 设置密码
格式: sudo passwd 用户名
e. sudo: superuser do : 超级用户授权当前用户执行命令
格式: sudo command
问题1: 在/opt目录下创建mysoft文件夹
sudo mkdir /opt/mysoft
f. which: 查找命令的位置
关机相关命令(reboot、shutdown)
1. reboot: 重启
2. shutdown: 关机
shutdown -h now: 立即关机
shutdown -r now 立刻重启
shutdown 20:25 20:25关机
shutdown +10 系统再过十分钟后关机
查看或配置网卡信息
ifconfig 查看或配置网卡信息
ping 本地回环用于测试网卡是否正常
远程上传/拷贝文件的命令
上传文件到远程服务器
scp 文件名.后缀 root@远程ip地址:/root/
远程拷贝文件
scp -P port 01.py user@remote:Desktop/01.py //如果后面不是绝对路径,则用户的家目录作为参考路径
用户相关操作命令
创建用户格式:sudo useradd -m 用户名
选项:
-m 自动创建用户主目录,主目录的名字就是用户名
-g 指定用户所属的用户组,默认不指定会自动创建一个同名的用户组
查看用户的信息: id 用户名
给用户设置密码: sudo passwd 用户名
切换到某个用户: su - 用户名
删除用户的格式: sudo userdel -r 用户名
选项:
-r 删除用户主目录,必须要设置,否则用户主目录不会删除
用户组相关操作命令
创建用户组格式:sudo groupadd 组名
创建用户并且指定用户组:sudo useradd -m 用户名 -g 组名
删除用户组: sudo groupdel 组名
(注意:删除组的时候要先确保该组没有用户,否则删除不成功)
软件安装
1、离线安装
a. 直接解压gzip或bzip2压缩文件
tar -xzvf xxx.tar.gz
tar -xjvf xxx.tar.bz2
b. 通过ubuntu支持的安装包进行安装
ubuntu支持deb格式,deb格式是Debian系统(包含Debian和Ubuntu)专属安装包格式,好比android的xxx.apk
格式:
sudo dpkg -i xxx.deb # 安装某个包
sudo dpkg -r xxx # 删除某个包
2、通过apt-get包管理器从软件源中在线安装(最常用的方式)
更新软件源
清华大学开源软件镜像站: https://mirrors.tuna.tsinghua.edu.cn/
apt-get 常用命令
在线安装命令格式: sudo apt-get install 安装包、程序名
删除包的命令格式: sudo apt-get remove 删除包、程序名
问题1:安装sl包,并且演示效果
sudo apt-get install sl
sudo apt-get remove sl
远程登录
1、ssh介绍
ssh(Secure Shell):安全外壳,安全网络协议
SSH是目前可靠的,专为远程登录会话和其他网络服务提供安全性的协议。
常用于远程登录,以及用户之间进行资料拷贝。利用SSH协议可以有效防止远程管理过程中的信息泄露问题
2、远程登录格式:ssh 用户名@IP
3、FileZilla图形界面实现远程拷贝(sftp基于ssh)