Linux基本操作命令
路径
一个点(./
),代表本级目录
两个点(../
),代表上级目录
两个上级目录(../../
),代表上上级目录
查看文件内容
cat 文件名
转到盘符/目录
cd 路径名
Windows 下转到 E 盘:
cd E:
显示目录中的文件
# 仅显示可见文件
ls 目录名
# 显示所有文件,包括隐藏文件
ls -a
# 显示详细信息
ll
文件重命名
mv 文件名1 文件名2
- 文件被命名为
.
开头时,如.flag
,则flag
为隐藏文件,ls
无法查看,需用ls -a
才可以看到- 将隐藏文件重命名去掉开头的
.
时,文件恢复可见
编辑文档
使用 vim 编辑:
vim 文件名
# 用法:
# i(进入编辑模式)
# esc(退出编辑模式)
# :q(退出,但不保存)
# :wq(保存并退出)
# esc + u(撤销之前的操作)
或者使用 gedit 编辑(如果没有需自行安装)
# 安装 gedit
sudo apt update
sudo apt install gedit
gedit 文件名
给文件增加权限
# 增加执行权限
sudo chmod a+x 文件名
# 增加 775 权限
sudo chmod 775 文件名
权限 | 数值 |
---|---|
读取权限 R | 4 |
写入权限 W | 2 |
执行权限 X | 1 |
775 权限中的三位数字分别对应:拥有者、组用户、其他用户
- 拥有者,拥有可读可写可执行权限:7 = 4 + 2 + 1
- 组用户,拥有可读可写可执行权限:7 = 4 + 2 + 1
- 其他用户,拥有可读可执行权限,但没有写入权限:5 = 4 + 1
运行 ELF 可执行文件
./可执行文件
如果想在终端直接输入命令来打开可执行文件,而不需要考虑可执行文件所在路径,例如:
可执行文件
需要创建软连接:
sudo ln -s "可执行文件的路径" /usr/bin/名称 # 这里的 “名称” 可以随意取
然后在终端通过如下命令即可直接打开可执行文件:
名称
运行 python 代码
# 使用默认 python 版本
python py文件名
# 指定 python 版本
python3 py文件名
编译 C 代码并运行
# 编译
gcc c文件名 -o 编译生成的文件名
# 运行
./编译生成的文件名
复制文件/文件夹
# 复制文件
cp 源文件 复制到文件/文件夹
# 复制文件夹
cp -r 源文件夹路径 复制到文件/文件夹
移动、重命名文件/文件夹
# 移动
mv 源文件/源文件夹路径 移动后的文件/文件夹路径
# 重命名
mv 源文件名 修改后的文件名
卸载 apt 安装的软件
--purge
是可选项,这个属性是将软件及其配置文件一并删除
sudo apt --purge remove 包名
- 如果不需要删除配置文件,则不加
--purge
选项
sudo apt remove 包名
deb 软件包的安装和卸载
除了一些 Github 上的工具,大部分软件都是需要自己安装的 deb 包,例如:搜狗输入法 Linux 版
安装 deb 软件包:
sudo dpkg -i deb文件名
卸载 deb 软件包:
# 查看已安装的软件
sudo dpkg -l
# 指定要卸载的软件,软件名严格按照 sudo dpkg -l 输出的软件名称
sudo dpkg -r 软件名
删除文件/文件夹
除非比较熟悉,否则删除命令尽量不要在
sudo
管理员权限下使用
# 删除一个空目录
rm -d 目录名
# 删除一个非空目录
rm -r 目录名
# 删除文件
rm 文件名
# 删除当前目录下的所有内容
rm -rf * # 千万千万不要手欠在 * 前面加 /,例如:rm -rf /*,如果在管理员权限下使用会导致系统崩溃!!!
解压文件
tar zxvf 压缩包 -C 解压到指定目录
修改 host 并清除 DNS 缓存
sudo vim /etc/hosts
# 检查目前的缓存大小
resolvectl statistics
# 清理缓存,清理完后 Current Cache Size 变为 0
resolvectl flush-caches
防火墙
- 关闭端口的防火墙,以 tcp 5000 端口为例
iptables -A INPUT -p tcp --dport 5000 -j ACCEPT
检测是否成功,通过 nmap 扫描该设备 IP 的 5000 端口,假设 IP 为 192.168.148.152:
nmap -p 5000 192.168.148.152
未关闭防火墙时:
PORT STATE SERVICE
5000/tcp filtered upnp
如果关闭成功:
PORT STATE SERVICE
5000/tcp open upnp
- 列出当前防火墙规则
iptables -L -n
评论