常用Linux命令、shell、git

shell

linux shell 脚本 入门到实战详解

git

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

GIT常用命令大全

  

别人写的,比较全

linux三剑客是啥

Linux三剑客(grep、sed、awk)

        "Linux三剑客"是指在Linux/Unix操作系统上常用的三个文本处理工具,这三个工具通常结合使用,可以实现各种复杂的文本处理和数据分析任务,被广泛用于文本处理、日志分析、数据提取和报表生成等领域。因为它们的功能强大,所以被戏称为"Linux三剑客"。

        grep:grep是"Global Regular Expression Print"的缩写,它是一种强大的文本搜索工具。grep用于在文件或文本流中查找指定的模式(正则表达式),并输出匹配的行。它经常用于日志分析、文本搜索和数据提取等任务。

        sed:sed是"Stream Editor"的缩写,它是一种用于文本编辑的流式工具。sed可以对文本流进行各种编辑操作,如替换、删除、插入、转换等,通常使用基于正则表达式的规则来操作文本。

        awk:awk是一种用于文本处理和报表生成的编程语言和工具。awk以文本的行为单位进行处理,可以根据特定的字段或列执行各种操作,如计算、过滤、格式化输出等。它的灵活性和功能强大,使其成为文本处理任务的理想工具。

grep和find的区别

        grep 主要用于文本搜索,查找文件中的内容;而 find 主要用于文件系统搜索,查找文件名称和目录

        grep 用于在文件或文本中搜索指定的文本模式(正则表达式),并输出包含匹配模式的行。它的主要目的是文本搜索和匹配。find 用于搜索文件系统中的文件和目录,根据文件名、大小、权限等条件来查找文件。它的主要目的是查找文件和目录,而不涉及文本内容的匹配。

目录

文件和目录管理

ls: 列出当前目录中的文件和子目录。

cd: 切换到指定目录。

pwd: 显示当前工作目录的路径。

mkdir: 创建一个新的目录。

cp: 复制文件或目录。

mv: 移动或重命名文件或目录。

rm: 删除文件或目录。

chmod: 修改文件或目录的权限。

chown: 修改文件或目录的所有者。

touch: 创建一个空文件或更新文件的访问时间。

cat: 查看文件内容。

more: 分页查看文件内容。

less: 分页查看文件内容,支持向上和向下浏览。

grep:查找文件中的特定字符串;递归搜索目录及其子目录中的文件。

ln: 创建硬链接或符号链接。

系统信息查询

date: 显示当前日期和时间。

uptime: 显示系统运行时间和平均负载。

uname: 显示系统信息。

whoami: 显示当前用户名。

cal: 显示日历。

history: 显示命令历史记录。

top: 显示实时系统进程和资源使用情况。

ps: 显示当前进程信息。

df: 显示文件系统磁盘使用情况。

du: 显示目录或文件的磁盘使用情况。

free: 显示系统内存使用情况。

netstat: 显示网络连接和统计信息;查询目前所有端口。

ss:显示所有监听的TCP和UDP端口;查找特定端口是否在监听状态。

用户及权限管理

useradd: 创建新用户。

userdel: 删除用户。

passwd: 更改用户密码。

groupadd: 创建新用户组。

groupdel: 删除用户组。

su: 切换到其他用户。

sudo: 以超级用户权限执行命令。

visudo: 编辑sudo配置文件。

网络配置和管理

ifconfig: 配置和显示网络接口信息。

ping: 向目标主机发送ICMP回显请求。

route: 显示和管理网络路由表。

nslookup: 查询DNS记录。

telnet: 与远程主机建立telnet连接(不太安全)。

ssh: 以安全方式远程登录到主机。

scp: 在本地主机和远程主机之间复制文件。

curl 或 wget:用于下载数据,也可发起HTTP请求测试网络连接。

ftp: 启动FTP客户端以进行文件传输。

进程和服务管理

service: 管理系统服务。

systemctl: 管理系统服务和系统状态。

nc(netcat):创建TCP/UDP连接;监听TCP端口;传输数据。

kill: 终止进程;杀死占用特定端口的进程。

killall: 终止具有指定名称的所有进程。

pgrep: 根据条件查找进程ID(多)。

根据进程名查找进程ID

根据完整的命令行参数查找进程ID

根据用户名查找进程ID

显示完整的进程信息(与 ps 命令类似)

组合使用多个条件(逻辑 AND)

pkill: 根据条件终止进程;终止端口。

telnet:远程连接到指定主机和端口进行登录和测试。

磁盘管理

fdisk: 分区表管理工具。

mkfs: 创建文件系统。

fsck: 检查和修复文件系统。

mount: 挂载文件系统。

umount: 卸载文件系统。

dd: 数据复制和转换工具。

parted: 磁盘分区工具。

包管理

apt-get: 使用APT包管理器安装、升级和管理软件包。

yum: 使用YUM包管理器在基于RPM的系统上安装、升级和管理软件包。

dpkg: Debian系统中的包管理工具,用于管理deb软件包。

rpm: 管理RPM软件包的Red Hat系统中的工具。


文件和目录管理

ls: 列出当前目录中的文件和子目录。

ls

cd: 切换到指定目录。

cd /path/to/directory

pwd: 显示当前工作目录的路径。

pwd

mkdir: 创建一个新的目录。

mkdir new_directory

cp: 复制文件或目录。

cp file.txt /path/to/destination/

mv: 移动或重命名文件或目录。

mv file.txt newname.txt

rm: 删除文件或目录。

rm file.txt

chmod: 修改文件或目录的权限。

chmod 755 file.txt

chown: 修改文件或目录的所有者。

chown user:group file.txt

touch: 创建一个空文件或更新文件的访问时间。

touch file.txt

cat: 查看文件内容。

cat file.txt

more: 分页查看文件内容。

more file.txt

less: 分页查看文件内容,支持向上和向下浏览。

less file.txt

grep:查找文件中的特定字符串;递归搜索目录及其子目录中的文件。

grep "pattern" file.txt
grep -r "pattern" /path/to/directory

ln: 创建硬链接或符号链接。

ln -s target_link link_name

  

系统信息查询

date: 显示当前日期和时间。

date

uptime: 显示系统运行时间和平均负载。

uptime

uname: 显示系统信息。

uname -a

whoami: 显示当前用户名。

whoami

cal: 显示日历。

cal

history: 显示命令历史记录。

history

top: 显示实时系统进程和资源使用情况。

top

ps: 显示当前进程信息。

ps aux

df: 显示文件系统磁盘使用情况。

df -h

du: 显示目录或文件的磁盘使用情况。

du -sh /path/to/directory

free: 显示系统内存使用情况。

free -h

netstat: 显示网络连接和统计信息;查询目前所有端口。

netstat -an
netstat -tuln

ss:显示所有监听的TCP和UDP端口;查找特定端口是否在监听状态。

ss -tuln
ss -tuln | grep <port>

  

用户及权限管理

useradd: 创建新用户。

useradd newuser

userdel: 删除用户。

userdel username

passwd: 更改用户密码。

passwd username

groupadd: 创建新用户组。

groupadd newgroup

groupdel: 删除用户组。

groupdel groupname

su: 切换到其他用户。

su - username

sudo: 以超级用户权限执行命令。

sudo command

visudo: 编辑sudo配置文件。

visudo

网络配置和管理

ifconfig: 配置和显示网络接口信息。

ifconfig

ping: 向目标主机发送ICMP回显请求。

ping google.com

route: 显示和管理网络路由表。

route -n

nslookup: 查询DNS记录。

nslookup google.com

telnet: 与远程主机建立telnet连接(不太安全)。

telnet example.com

ssh: 以安全方式远程登录到主机。

ssh username@hostname

scp: 在本地主机和远程主机之间复制文件。

scp file.txt remoteuser@remotehost:/path/to/destination/

curlwget:用于下载数据,也可发起HTTP请求测试网络连接。

curl http://<host>:<port>
wget http://<host>:<port>

ftp: 启动FTP客户端以进行文件传输。

ftp example.com

  

进程和服务管理

service: 管理系统服务。

service servicename start

systemctl: 管理系统服务和系统状态。

systemctl start servicename

nc(netcat):创建TCP/UDP连接;监听TCP端口;传输数据。

nc <host> <port>
 nc -l <port>

了解详情

kill: 终止进程;杀死占用特定端口的进程。

kill process_id
kill $(lsof -t -i:<port>)

killall: 终止具有指定名称的所有进程。

killall -9 <process_name>

pgrep: 根据条件查找进程ID(多)。

根据进程名查找进程ID

pgrep firefox 可以查找所有名为 "firefox" 的进程,并返回相应的PID。

pgrep processname
根据完整的命令行参数查找进程ID

pgrep -f "python script.py" 可以查找所有运行 "python script.py" 的进程。

pgrep -f <command>
根据用户名查找进程ID

pgrep -u john 可以查找属于用户 "john" 的所有进程。

pgrep -u <username>
显示完整的进程信息(与 ps 命令类似)
pgrep -l <process_name>

例如:pgrep -l ssh 可以显示所有名为 "ssh" 的进程及其对应的PID。

pgrep -l <process_name>
组合使用多个条件(逻辑 AND)

pgrep -u john -f "python" 可以查找属于用户 "john" 并且命令行中包含 "python" 的进程。

pgrep -u <username> -f <command>

pkill: 根据条件终止进程;终止端口。

pkill processname
pkill -f :<port>

telnet:远程连接到指定主机和端口进行登录和测试。

telnet <host> <port>

  

磁盘管理

fdisk: 分区表管理工具。

fdisk /dev/sdX

mkfs: 创建文件系统。

mkfs.ext4 /dev/sdX1

fsck: 检查和修复文件系统。

fsck /dev/sdX1

mount: 挂载文件系统。

mount /dev/sdX1 /mnt

umount: 卸载文件系统。

umount /mnt

dd: 数据复制和转换工具。

dd if=inputfile of=outputfile

parted: 磁盘分区工具。

parted /dev/sdX

  

包管理

apt-get: 使用APT包管理器安装、升级和管理软件包。

apt-get install packagename

yum: 使用YUM包管理器在基于RPM的系统上安装、升级和管理软件包。

yum install packagename

dpkg: Debian系统中的包管理工具,用于管理deb软件包。

dpkg -i package.deb

rpm: 管理RPM软件包的Red Hat系统中的工具。

rpm -i package.rpm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值