linux常用命令
1 文件和目录常用命令 2 3 ls 查看目录内容 4 ls –a 查看所有文件,包含隐藏文件 5 ls –l 显示详细信息 6 ls –l –h 7 ls 1* 通配符找出1开头的文件 8 ls *1.后缀 9 ls ?1? 找出中间包含1的文件 10 ls [123]12 找出位数12结尾的所有文件 比如:112 212 312 11 ls [1-4]3 找出13 23 33 43 12 ls [a-f]类似 13 14 pwd 查看当前目录路径 15 16 cd [目录名] 切换文件夹 17 cd Desktop 18 cd 输入文件名一部分,然后按TAB补全 19 cd 回到home目录 20 cd ~ 回到home目录 21 cd . 保持当前目录不变 22 cd .. 到上级目录 23 cd - 在最近2次目录间切换 24 25 touch [文件名] 如果文件不存在,则新建文件 26 touch demo.txt 27 28 rm [文件名] 删除文件 29 rm demo.txt 30 rm –r [目录名] 递归删除 31 rm –f [目录名] 强制删除 32 33 mkdir [目录名] 新建目录 34 mkdir -p a/b/c/d 创建递归4个目录 35 36 clear 清屏 37 38 cp 拷贝 39 cp ~/Documents/demo.txt ./Desktop/demo.txt 把文档里的txt复制到桌面去 40 cp ~/demo.txt . 把文件复制到当前目录 41 cp –i ~/demo.txt 询问是否覆盖 42 cp –r [目录] 43 44 mv 移动 45 mv test ~/ Documents / 把test目录移动到Documents目录 46 mv a demo 把a目录重命名为demo 47 mv demo.txt test.txt 重命名(test.txt不存在的情况下) 48 mv demo.txt test.txt 覆盖(test.txt存在的情况下) 49 mv -i demo.txt test.txt 询问是否覆盖 50 mv 01* demo 将包含文件名01开头的全部移动到demo下 51 52 tree 查看树结构 53 tree [目录名] 54 tree –d 只显示目录 55 tree ~ 列出当前用户目录 56 57 cat 1.txt 完整显示内容 58 cat -b 1.txt 对非空内容输出行号 59 cat -n 1.txt 对输出所有行输出行号 60 more 1.txt 分组显示内容 按空格显示下一屏 回车滚动一行 61 62 grep a 1.txt 查找1.txt里面包含a的文本 63 grep -n a 1.txt 输出匹配在多少行 64 grep -v a 1.txt 不包含a的行 65 grep -vn a 1.txt 不包含a的行,包括行号 66 grep -i“this is” 1.txt 找到this is的文本 忽略大小写 67 grep ^a 1.txt 搜索以a开始的行 68 grep ng$ 1.txt 搜索以ng结尾的行 69 70 echo 内容 打印内容 71 72 > 重定向 73 echo [内容] > a 生成一个a的文本文件 74 ls –lh > a 75 76 >> 追加内容 77 ls –lh >> a 78 79 管道 80 ls –lha ~ | more 81 ls -lha ~ | grep on 查询包含目录下包含on的文件 82 83 上下选择用过的命令 84 85 Ctrl+ C 取消当前的命令 86 87 88 89 90 远程管理常用命令 91 92 关机重启 93 shutdown 一分钟后关机 94 shutdown now 马上关机 95 shutdown –c 取消关机 96 shutdown 20:50 20点50关机 97 shutdown +10 10分钟后关机 98 shutdown –r now 马上重启 99 100 ifconfig 查询网卡配置信息 101 ifconfig | grep inet 查看网卡对应的IP地址 102 ping ip 103 104 105 SSH (可以使用git ssh) 106 107 连接 108 ssh -p 22 ronle@192.168.75.131 109 110 断开连接 111 exit 112 113 ssh出现Connection refused 114 使用netstat | grep 22测试,发现22端口并没有进程,很显然应该安装ssh服务端 115 116 终端输入: 117 sudo apt install openssh-server 118 119 目标主机的ssh server端程序是否安装、服务是否启动,是否在侦听22端口 120 ps -ef|grep sshd 121 122 ps -e |grep ssh 123 如果看到sshd那说明ssh-server已经启动 124 125 连接后需要输入远程主机ronle的密码 126 后续操作需要权限的就加上sodu 127 128 129 远程主机复制文件到本机 130 scp -P 22 ronle@192.168.75.131:Desktop/ronle.txt . 131 132 远程主机复制目录到本机demo目录里 133 scp -P 22 -r ronle@192.168.75.131:Desktop demo 134 本机复制到远程主机 135 scp -P 22 demo.doc ronle@192.168.75.131: Desktop / 136 windows下的 137 138 139 xshell 140 https://www.netsarang.com/download/down_xsh6.html?token=aW5DdUwrclhRL1ZYUU9GakhHaitIQUBxVk1RNGlxZnFqOHQ4UU03YTVPVUhB 141 142 putty 143 https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 144 145 146 还可以使用FTP来连接远程主机传输文件 端口改为21即可 147 148 使用remmina 149 150 151 远程主机连接本机 152 cd .ssh 153 ssh -p 22 cheng@192.168.7.48 154 155 ssh-keygen 创建密钥 156 ssh-copy-id ronle@192.168.7.131 存取密钥 157 158 配置别名 159 160 cd .ssh 161 touch config 162 gedit config 163 164 内容: 165 166 Host mypc 167 HostName 192.168.7.131 168 User ronle 169 Port 22 170 171 ssh mypc 就可以直接登录了 172 173 组权限 174 175 sudo groupadd dev 增加开发组 176 cat /etc/group 查看信息 177 sudo chgrp –R dev [目录] 把目录加入dev组 178 179 用户权限 180 181 chmod –rw [文件名] 取消文件的读取和写入 182 chmod +rw [文件名] 增加文件的读取和写入 183 chmod –x [目录] 取消目录的执行权限 184 185 gedit [文件名] 编辑文件 186 187 用户管理 188 189 sudo useradd -m -g dev beyond 给dev组增加beyond用户,包括home目录 190 sudo passwd beyond 设置密码 191 192 ls -l /etc/passwd 193 cat -n /etc/passwd 194 cat /etc/passwd | grep [用户名] 查看用户信息 195 cat -n /etc/group | grep [用户名] 196 197 sudo userdel –r [用户名] 删除用户包含HOME目录 198 199 id ronle 查看用户id 200 who 查看当前登录的用户列表 201 whoami 查看当前登录用户的账户名 202 203 设置用户 204 205 主组,通常是新建用户时指定,在etc/passwd组 206 附加组,在etc/group组,用于指定用户的附加权限 207 208 设置用户的主组(passwd中的GID) 209 usermod -g 组 用户名 210 211 修改用户的附加组 212 usermod -G 组 用户名 213 usermod -G sudo zhangsan (使张三能使用sudo权限,需要张三重新登录终端) 214 215 重新登录 216 ssh zhangsan@192.168.7.131 217 218 修改用户登录shell 219 sudo usermod –s /bin/bash zhangsan 220 221 查看命令所在位置 222 which ls 223 which useradd 224 225 226 ls -l /usr/bin/passwd (/usr/bin/passwd 用于修改用户密码的程序) 227 ls -l /etc/passwd (/etc/passwd用于保存用户信息的文件) 228 229 230 切换用户 231 su [用户名] 232 su – [用户名] 233 234 su后面不接用户名,直接切换到root账户 235 236 系统命令 237 238 时间和日期 239 date 系统时间 240 cal 日历 241 cal –y 显示一年 242 243 244 df –h 查看磁盘空间 245 246 du –h 查看目录空间 247 248 249 进程 250 251 (a 显示终端的所有进程,包括其他用户进程 u 显示进程详细状态x 显示没有控制终端的进程) 252 253 ps au 254 ps aux 查看进程详细状况 255 256 top 实时显示进程排序 按Q结束 257 258 kill -9 [进程PID] 259 260 查找文件 261 262 find [目录] –name 条件 263 find Desktop/ –name “*1*” 包含1的文件 264 find Desktop/ –name “*.py” 包含py后缀的文件 265 find Desktop/ –name “1*” 1开头的文件 266 267 268 269 270 软链接(类似win上的快捷方式) 271 272 ln –s [被链接的源文件] [链接文件] 273 ln –s demo/1.py zhixing.py (相对路径) 274 ln –s /home/ronle/Desktop/demo/1.py zhixing.py (绝对路径:推荐使用) 275 276 硬链接(不添加-s就是硬链接,删除了源文件,硬链接内容不会受影响,不常用) 277 278 ln /home/ronle/Desktop/demo/1.py zhixing 279 280 281 282 打包解包 283 284 打包 285 tar -cvf [打包文件.tar] [路径] 286 287 将3个文件打包为py.tar 288 tar -cvf py.tar *.py 289 290 压缩打包 291 tar -zcvf py.tar.gz *.py 292 293 解包 294 tar -xvf [打包文件.tar] -C [路径] 295 296 tar -xvf py.tar -C [路径] 297 298 解压解包 299 300 tar -zxvf py.tar.gz 301 302 303 304 305 306 307 bzip2 308 309 压缩打包 310 tar -jcvf py.tar.bz2 *.py 311 312 解压包 313 tar -jxvf py.tar.bz2 314 315 apt安装软件 316 317 sudo apt install [软件名] 318 sudo apt remove [软件名] 319 sudo apt upgrade 更新已安装的包 320 321 设置软件源 322 323 设置里面 -- 软件和更新 324 选择 源代码 — 其他站点 325 326 VI编辑器 327 328 vi [文件名] 打开或新建一个文件 329 330 vi 1.py 331 332 print(“hello”) 333 334 输入yy19p 会复制19次print(“hello”) 335 按u 就会回退 336 ctrl+r 前进