回想当时入门Linux时抱着鸟叔的私房菜啃,看了没几页就放弃了。
如果主要从事算法相关工作,其实高频使用的命令就那么些,一起看看吧!
用户相关
• id – 显示用户的详细信息(uid、gid和group)
• last – 列出有关最近登录的信息,包括时间、用户名、IP地址和会话持续时间
• who – 显示已授权的用户
• groupadd "testgroup" – 创建名为 "testgroup" 的组
• adduser NewUser – 添加名为 "NewUser" 的用户
• userdel NewUser – 删除名为 "NewUser" 的用户
• usermod NewUser – 修改有关用户 "NewUser" 的信息
目录导航相关
• cd / - 进入根目录
• cd - 进入主目录(使用$HOME变量)
• cd /root - 进入 /root 目录
• cd .. - 向上移动一级
• cd /root/.ssh - 进入隐藏文件夹 .ssh
文件操作相关
• ls -al – 显示当前文件夹中的文件和目录
• pwd – 显示当前工作目录
• mkdir NewFolder – 创建名为 'NewFolder' 的新目录
• rm NewFile – 删除名为 'NewFile' 的文件
• rm -f NewFile – 强制删除名为 'NewFile' 的文件
• rm -r NewFolder – 递归删除名为 'NewFolder' 的目录
• rm -rf NewFolder – 强制递归删除名为 'NewFolder' 的目录
• cp oldfile1 newfile2 – 复制 'oldfile1' 的内容到 'newfile2'
• cp -r olddir1 newdir2 – 递归复制目录 'olddir1' 到 'newdir2'。如果不存在,将创建 Dir2
• mv oldfile1 newfile2 – 将 'oldfile1' 重命名为 'newfile2'
• ln -s /etc/log/file logfile – 创建指向文件的符号链接
• touch newfile – 创建名为 'newfile' 的空文件
• cat > newfile – 将标准输入放入 'newfile'
• more newfile – 逐屏输出 'newfile' 的内容
• head newfile – 输出文件 'newfile' 的前10行
• tail newfile – 输出文件 'newfile' 的最后10行
• gpg -c newfile – 使用密码以gpg格式加密 'newfile' 并保存在相同目录中
• gpg newfile.gpg – 解密gpg文件
• wc newfile – 显示新文件中的字节数、单词数和行数
文件/目录权限相关
• chmod 777 /root/ssh – 为所有有权访问服务器的人(所有者、组、其他人)设置读、写和执行权限
• chmod 755 /root/ssh – 为所有者设置rwx权限,为组和其他人设置r_x权限
• chmod 766 /root/ssh – 为所有者设置rwx权限,为组和其他人设置rw权限
• chown newuser newfile – 将newfile的所有者更改为newuser
• chown newuser:newgroup newfile – 将newfile的所有者和组所有者都更改为newuser和newgroup
• chown newuser:newgroup newfolder – 将目录newfolder的所有者和组所有者都更改为newuser和newgroup
• stat -c “%U %G” newfile – 显示newfile的用户和组所有者
搜索
• grep searchargument newfile – 在newfile中搜索searchargument
• grep -r searchargument newfolder – 在newfolder中递归搜索searchargument
• locate newfile – 显示newfile的所有位置
• find /etc/ -name "searchargument" – 在 /etc 目录中找到以 searchargument 开头的文件
• find /etc/ -size +50000k – 在 /etc 目录中找到大于 50000k 的文件
解压缩相关
• tar -cf archive.tar newfile – 从文件 'newfile' 创建一个压缩 'archive.tar'
• tar -xf archive.tar – 解压文件 'archive.tar' 的内容
• tar -zcvf archive.tar.gz /var/log/ – 从 /var/log/ 目录创建一个tar压缩,并使用gzip进行压缩
• gzip newfile – 压缩新文件(将具有 .gz 扩展名)
软件包安装相关
• rpm -i pkg_program.rpm – 在CentOS、RHEL等上安装RPM软件包
• rpm -e pkg_name – 在CentOS、RHEL等上删除RPM软件包
• dnf install pkg_name – 在CentOS、RHEL等上使用DNF从仓库安装软件包。YUM曾经是使用的工具,但最近已被DNF取代
• dpkg -i pkg_name – 在Debian、Ubuntu、Mint等上安装DEB软件包
• dpkg -r pkg_name – 在Debian、Ubuntu、Mint等上删除DEB软件包
• apt install pkg_name – 在Debian、Ubuntu、Mint等上从仓库安装软件包
• apt remove pkg_name – 在Debian、Ubuntu、Mint等上删除软件包
• apt upgrade && apt update – 更新系统(Debian、Ubuntu、Mint等)中的软件包并更新仓库
进程相关
• ps – 显示当前正在运行的进程
• ps aux | grep 'bash' – 查找 'bash' 的进程ID(PID)
• pmap -x 11 – 在进程内存中映射具有PID 11的进程
• top – 显示所有正在运行的进程
• kill pid – 通过PID终止一个进程
• killall process – 终止所有名称为 ‘process’的进程
• pkill process-name – 通过名称向一个进程发送信号
• bg – 将一个暂停的进程发送到后台
• fg – 将一个运行中的进程带到前台
• fg process – 将名为 ‘process‘ 的进程带到前台
• lsof – 列出被进程打开的文件
• renice 19 PID – 为一个进程设置最低优先级
• pgrep bash – 查找 'bash' 的进程ID
• pstree – 显示进程的树状表示
系统相关
• uname – 显示系统信息
• uname -r – 显示有关Linux内核的信息
• uptime – 显示系统运行时间和平均负载
• hostname – 显示主机名
• hostname -i – 显示主机的IP地址
• last reboot – 显示重启历史
• date – 显示日期和时间
• timedatectl – 输出并修改日期和时间设置
• cal – 显示日历
• w – 显示当前登录的用户
• whoami – 显示你的用户名
• finger root – 显示有关root用户的信息(需要使用 "apt-get install finger" 进行安装)
硬件相关
• dmesg – 在启动期间显示系统消息
• cat /proc/cpuinfo – 显示处理器信息
• cat /proc/meminfo – 显示内存信息
• lshw – 显示设备的详细信息
• lsblk – 显示块设备信息
• free -m – 释放内存:RAM和swap(使用-M切换为MB)
• lspci -tv – 以树状视图显示PCI设备信息
• lsusb -tv – 以树状视图显示USB设备
• dmidecode – 显示有关BIOS设备的信息
• hdparm -i /dev/xda – 显示有关磁盘的信息
• hdparm -tT /dev/xda – 显示xda的读写速度
• badblocks -s /dev/xda – 执行坏块测试
磁盘管理相关
• df -h – 显示挂载分区上的可用空间(以字节为单位)
• df -i – 显示文件系统中的空闲inode
• fdisk -l – 提供关于磁盘、分区和文件系统的信息
• du -sh – 以MB、GB、TB显示挂载分区上的未分配空间
• findmnt – 显示所有挂载点
• mount /dev/sdb1 /mnt – 将sdb磁盘的分区1挂载到 /mnt 目录
网络相关
• ip addr show – 显示所有可用网络接口的IP地址
• ip address add 192.168.0.1/24 dev eth0 – 为eth0接口分配地址192.168.0.1
• ifconfig – 显示所有可用网络接口的IP地址
• ping 192.168.0.1 – 发送ICMP协议请求以连接到192.168.0.1节点
• whois domain – 显示有关域名的信息
• dig domain – 检索有关域的DNS信息
• dig -x 192.168.0.1 – 执行反向DNS解析
• host serverspace.us– 解析主机地址
• hostname -I – 显示本地地址
• wget file_name(link to file) – 下载文件
• netstat -pnltu – 显示主机上所有正在监听的端口(需要 "apt-get install net-tools" 进行安装)
远程连接相关
• ssh root@host – 以root用户身份通过ssh连接到远程主机
• ssh -p port_number user@host – 使用非默认ssh端口连接到远程主机,指定用户
• ssh host – 使用当前用户使用默认连接
• telnet host – 使用telnet连接(端口23)