前言 一些常用的命令行指令进行总结分享
以下命令均可查阅帮助手册(格式如下)
命令 /? 命令 /help help 命令
一、Windows
windows下所有指令不区分大小写 通配符号* 管道符号|
打开终端 win+r 输入cmd回车即可(可执行文件在C:\Windows\System32的目录下) 输入cmd(Ctrl+Shift+回车)以管理员身份运行
1.1 路径操作 cd(切换路径) 1 2 3 4 5 6 cd 显示当前所在目录 cd .. 回到上级目录 cd \ 回到根目录 cd 指定路径 切换到指定路径下(但是不切到其他盘) cd /d 指定路径 切换到指定路径下(可以切到其他盘) 直接输入盘符D: 切换到D盘
dir(查看路径下内容) 1 2 3 dir /a 列出当前文件夹下所有文件/文件夹 dir 指定路径 列出指定路径下文件列表 dir /q 同时列出所有者
1.2 文件操作 创建文件 1 2 3 4 5 6 7 8 9 创建空文件 touch 文件名 type null > 文件名 创建空文件 单行写入 echo 内容 >> 文件名 向文件中写入内容(创建文件) echo 内容 > 文件名 将内容写入文件里 echo 内容 >> 文件名 追加内容到文件里 多行写入 copy con 文件名 将终端输入的内容写到文件中(Ctrl+Z结束)
删除文件 1 2 del 文件名 删除文件 del /q 文件名 删除文件(不进行确认)
查看文件内容 1 2 3 type 文件名 查看文件内容(分页显示文件内容) more 文件名 查看文件内容(不是一次性展示完全) type 文件名 | more 通过分页查看文件内容(分页部分加载)
打开文件 1 2 start 文件名 使用默认程序打开文件 notepad 文件名 使用指定程序运行文件(无环境变量需要指定路径)
重命名文件 ren(rename) 旧文件名 新文件名 重命名文件
比较文件 fc 文件名1 文件名2 比较两个文件的差异
查找文件内容 1 2 3 find "xxx" 路径文件名 查找文件中是否出现xxx内容 /i 忽略大小写 /c 返回所在行
1.3 文件夹操作 创建&删除文件夹 1 2 3 4 5 md(mkdir) 文件夹名 创建文件夹 rd(rmdir) 文件夹名 删除文件夹(不可以删除非空) rd /s 强制删除(可以删除非空) rd /q 删除时安静模式(默认确认删除)
1.4 移动拷贝 1 2 3 4 copy 原文件路径/文件名 目的文件路径/文件名 复制文件 copy 1.txt + 2.txt 3.txt 合并1.txt和2.txt的内容保存为 3.txt 文件 move 原文件路径/文件名 目的文件路径/文件名 移动(拷贝)文件 move 1.txt ..\b\ 移动1.txt到上一级目录b文件夹下
1.5 开关机相关 1 2 3 4 5 6 7 8 shutdown /s 立即关机 shutdown /f 强制关机 shutdown /s /t 60 关机倒计时 shutdown /a 取消关机 shutdown /r 重启电脑 shuwdown /r /t 60 60秒后重启电脑 shutdown /l 注销(同logoff) shutdown /h 休眠计算机
1.6 网络相关 本地网络 1 2 3 4 5 6 ipconfig /all 查看网卡详细信息 ipconfig /flushdns 清除本地 DNS 缓存、 arp -a 显示当前所有网卡的ARP信息表 netstat -ano 查看网络连接状态 netstat -ano | findstr xxx 前面内容作为后面内容的输入进行选择 route print 本机路由表
远端网络 1 2 3 ping ip/域名 检测网络连通性和延迟 100~130ms之间,Windows系统 ; 240~255ms之间,UNIX/Linux系统。
1 2 tracert ip/域名 跟踪路由途径 nslookup 域名 解析IP
1.7 进程操作 查看当前运行进程
tasklist 显示当前进程表
终止进程 1 2 3 4 5 taskkill /F /IM 进程名称 taskkill /f /pid 进程pid号 - /f 表示强制终止 - /im 表示指定的进程名称 - /pid 表示进程pid号
1.8 环境变量相关
path 查看系统环境变量
设置临时环境变量
添加或者修改环境变量1 2 3 set 变量名=变量内容 # 设置变量 tmp 的值为 c:\tmp set tmp=c:\tmp
追加环境变量1 2 3 set 变量名=%变量名%;变量内容 # 给path追加一个变量为d:\go set path=%path%;d:\go
设置永久环境变量
用户环境变量1 2 3 4 设置用户环境变量:setx "变量名" "变量值" setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0_281" 将 JAVA_HOME 的值设置为 "C:\Program Files\Java\jdk1.8.0_281"。 echo %JAVA_HOME% 查看是否生效
系统环境变量1 2 3 设置计算机(全局)环境变量:setx "变量名" "变量值" /m setx /m PATH "%PATH%;C:\MyFolder" 将系统的 PATH 环境变量添加 "C:\MyFolder" 这个路径。
1.9 防火墙相关 1 2 3 4 netsh firewall show state 查看防火墙状态 netsh firewall show config 查看防火墙配置 netsh advfirewall set allprofiles state off 关闭防火墙(管理员) netsh advfirewall set allprofiles state on 开启防火墙(管理员)
添加规则(应用) 1 2 netsh advfirewall firewall add rule name="f.exe" dir=in program="e:\f.exe" action=allow 为e:\f.exe 添加防火墙入站规则 netsh advfirewall firewall delete rule name="f.exe" 删除规则
添加规则(端口) 1 2 3 4 添加规则 netsh advfirewall firewall add rule name="HTTP" protocol=TCP dir=in localport=8080 action=allow(block为关闭) 删除规则 netsh advfirewall firewall delete rule name="HTTP" protocol=TCP dir=in localport=8080
查看配置的规则 1 netsh advfirewall firewall show rule name="HTTP"
1.10 用户相关 windows 内置账户 1 2 3 4 5 6 7 8 administrator #管理员账户 (权限很高) guest #来宾账户 (权限很低) 计算机服务组件相关的账户: system #系统账户 == 权限至高无上(只能系统使用,不能人使用,系统偷偷运行的) local services #本地服务账户 == 权限等于普通用户 network services #网络服务账户 == 权限等于普通用户 (联网相关的服务都是它在启) 所有用户的密码均存放在电脑的C:\Windows\System32\config\SAM中,但是全部(hash加密)且无法打开
查看用户 1 2 3 4 net user 查看当前系统下的用户(但是看不到隐藏账户) net localgroup 查看所有的用户组 net localgroup +组名 查看当前组下的用户 net localgroup administrators 查看管理组下的用户
添加用户 1 2 3 4 net user 用户名 密码 /add 添加一个用户 net user admin admin /add net localgroup 组名 +用户名 /add 添加用户到组 net localgroup administrators admin /add
删除用户 1 2 3 4 net user 用户名 密码 /del 删除用户 net user admin /del net localgroup 组名 +用户名 /del 从组中删除用户 net localgroup administrators admin /del
影子账户 1 2 3 4 5 6 7 8 net user 用户名$ 密码 /add net user test$ test /add net user 看不到 compmgmt.msc 可以看到 net localgroup 组名 用户名$ /add net localgroup administrators test$ /add
1.11 远程桌面
前提条件: 家庭版只能连接他人,而不能被别人连接 专业版既可以连接别人,也可以被别人连接 只限于局域网,如果要跨网段连接,请在路由器做端口转发
查找真实端口 1 2 3 4 5 6 7 8 9 默认方式 netstat -ano | findstr 3389 查看远程桌面服务是否开放 其他方式1: REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber 若返回0xd3d 则10进制为3389 其他则自行转换 其他方式2: tasklist /svc | find "Ter"(在tasklist /svc中找到TermService)的PID netstat -ano | find "PID"
开启和关闭远程服务 1 2 3 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f 开启远程桌面 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f 关闭远程桌面
修改远程桌面端口 1 2 3 4 5 6 7 8 9 在regedit中找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\Wds\rdpwd\Tds\tcp 下面的PortNumber 双击修改PortNumber,默认是十六位进制,点击十进制。我们将端口号修改 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStaions\RDP-Tcp 下面的PortNumber 双击修改PortNumber,默认是十六位进制,点击十进制。我们将端口号修改 重启电脑(或者服务)生效
关于远程桌面的连接问题
开启远程服务
1.win+i 打开远程桌面
2.sysdm.cpl 打开远程
3.查看ip地址(win+r -> cmd -> ipconfig)
4.win+r 输入mstsc 打开远程,输入IP:Port连接(用户信息继续看下面)
用户名和密码必需输入被控制电脑的管理组成员 默认情况下,无密码不能登录
本地用户1 2 3 系统默认最高权限时Administrator 无密码(需添加) 可以给其设置密码 net user Administrator 密码 添加新用户也同理
微软账户1 2 3 4 5 6 7 8 9 不需要退出微软用户登录本地用户(这也算一种方式) 使用微软邮箱+微软密码进行登录 微软账号为: bighard@qq.com 密码为12344qwert@&& 那就把MicrosoftAccount\bighard@qq.com作为用户名 12344qwert@&& 作为密码即可。 现在发现账号填微软账号,密码填微软账号密码也行
如何判断密码 1 2 1.如果使用的是本地用户,开机或者win+l后,需要输入密码,那就是那个账户的密码 2.如果用的微软账户,且已经设置了Hello pin,那个Hello pin并不是你的远程密码
无密码登录(不推荐) win+r gpedit.msc ->Windows设置->安全设置->本地设置->安全选项 找到账户:使用空密码的本地账户,设置为禁用,即可通过无密码远程登录 注:不推荐,不安全!!!
1.12 远程下载文件
cmd下 curl http://xx.xx.xx.xx/test.zip -o 文件名 将文件下载并重命名
powershell下 wget http://xx.xx.xx.xx/test.zip -o 文件名 将文件下载并重命名
其他 cmd下 1 2 3 4 5 6 7 8 start 再打开一个cmd start /b 后台执行 exit 退出当前cmd title xxx 将cmd命令行窗口标题换为xxx color xy x表示背景色,y表示字体色(x,y∈[0,F]) cls 清空屏幕 Ctrl+c 终止命令 pause 暂停命令
特殊符号使用 1 2 3 4 5 6 7 8 9 10 11 12 13 & 顺序执行多条命令,而不管命令是否执行成功 && 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令 || 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令 | 管道命令 dir *.* /s/a | find /c ".exe" 管道命令表示先执行 dir 命令,对其输出的结果执行后面的 find 命令 该命令行结果:输出当前文件夹及所有子文件夹里的.exe文件的个数 > 和 >> 均为重定向符号(指定文件不存在则自动创建) > 清除文件中原有的内容后再写入,相当于直接覆盖整个文件 >> 追加内容到文件末尾,而不会清除原有的内容 < 从文件中获得输入信息,而不是从屏幕上 echo 2005-05-01>temp.txt 写入内容到文件 date < temp.txt 从文件中读取
转义字符 1 2 3 ^ 在特殊字符前加入,进行转义,避免与其他字符使用冲突 echo ^<?php 123; ?^> > 222.txt 将<?php 123; ?>写入222.txt文件中
输出到空
查看系统信息 1 2 3 4 5 6 ver 查看系统版本 winver 显示系统版本 systeminfo 显示电脑详细配置信息 echo %username% 输出当前用户名 echo %userprofile% 输出用户配置文件位置 hostname 查看当前电脑名称
快捷打开方式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 noetpad 打开系统自带的记事本 mstsc 打开远程桌面连接 regedit 打开注册表 mspaint 打开画图 write 打开写字板 calc 打开计算器 taskmgr 打开任务管理器 services.msc 打开服务 control 打开控制面板 sysdm.cpl 系统属性(常用) compmgmt.msc 打开计算机管理(常用) explorer 打开文件资源管理器 gpedit.msc 打开组策略 lusrmgr.msc 打开本地用户和组 schtasks.exe 查看计划任务 firewall.cpl 打开防火墙配置 desk.cpl 打开屏幕设置 ncpa.cpl 打开网络连接(常用)
二、Linux 2.1 文件系统
1.Linux一切皆文件 2.只有一个顶级目录 注意事项:命令区分大小写
Linux
含义
/bin
所有用户可用的基本命令存放的位置
/sbin
需要管理员权限才能使用的命令
/boot
linux系统启动的时候需要加载和使用的文件
/dev
外设连接linux后,对应的文件存放的位置
/etc
存放系统或者安装的程序的配置文件,注册服务等
/home
家目录,linux中每新建一个用户,会自动在home中为该用户分配一个文件夹
/root
root账户的家目录,仅供root账户使用
/lib
linux的命令和系统启动,需要使用一些公共的依赖,放在lib中,类似我们开发的代码执行需要引入的jdk的jar
/usr
很多系统软件的默认安装路径
/var
系统和程序运行产生的日志文件和缓存文件放在这里
2.2 路径操作 ls 1 2 3 4 5 6 ls [-参数1参数2] [目标文件夹] 查看文件列表 ls 查看当前目录下的文件列表 ls / 查看根目录下的文件 ls -l 查看详细信息 ls -a 查看隐藏文件(.开头的就是隐藏文件) ls -la 参数可并用
cd 1 2 3 4 5 cd 目标文件夹 切换目录 cd ~ 切换到当前用户的home目录 cd . 当前目录 cd .. 切回上一级目录 cd - 切到上次所在的目录
pwd pwd 查看当前命令所在的目录
2.3 文件操作 创建文件 1 2 touch 文件名 创建空文件 vim 文件名 使用vim编辑器创建文件
删除文件 1 2 rm 文件 删除文件 rm -rf 文件 强制删除不询问
查看文件内容 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 stat 文件名 显示文件详细信息 cat 文件名 一次性查看文件全部内容 cat -n 文件名 查看文件内容,并从1开始对所有输出的行数(包括空行)进行编号 cat -b 文件名 查看文件内容,并从1开始对所有输出的非空行进行编号 tac 文件名 倒叙输出文件内容 more 文件名 分页查看内容 more -num 文件名 查看文件内容,一次显示num行 more +num 文件名 查看文件内容,从第num行开始显示 less 文件名 滚动查看文件内容 按 Q退出less命令 head 文件名 指令用于显示文件开头的内容,默认显示文件的前10行内容 head -n <行数> filename 显示文件内容的前n行 head -c <字节> filename 显示文件内容的前n个字节 tail 文件名 指令用于显示文件尾部的内容,默认显示指定文件的末尾10行 tail -n <行数> filename 显示文件尾部的n行内容 tail -c <字节数> filename 显示文件尾部的n个字节内容;
打开文件编辑 vim 操作见Linux vi/vim vim 文件名
重命名文件 mv 旧文件名 新文件名
比较文件 diff 文件1 文件2 逐行比较文件
查找文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 find 搜索路径 -name "文件名关键词" find / -name "passwd" find / -perm 4000 2>/dev/null 寻找 4000权限的文件,不显示其他的错误信息相当于过滤。 which xxx 从环境变量从查找程序 whereis xxx 全盘查找文件 -b 查找二进制文件 -m 查找帮助手册 locate 文件名 从整个磁盘查找文件(每次重启时更新数据库) 若是要查找新建的文件或者新下载的程序,请输入以下命令更新数据库 sudo updatedb 再使用locate 文件名查找
查找文件内容 1 2 3 grep -参数 内容 要查找的目录范围 参数 -n 显示查找结果所在行号 grep 1 1.txt
2.4 文件夹操作 创建&删除文件夹 1 2 3 mkdir 文件夹名 rmdir 文件夹名 删除一个非空文件夹 rm(remove) -rf 文件夹 删除文件夹(递归且强制)
2.5 移动拷贝 1 2 3 4 mv 旧文件路径 新文件路径 移动文件到新目录 区分 mv 旧文件名 新文件名 这是修改文件名 cp 旧文件路径 新文件路径 复制文件
2.6 权限管理 ==注意:root账户不受文件权限的读写限制,执行权限受限制==
文件类型
当为 d 则是目录 当为 - 则是文件 若是 l 则表示为链接文档(link file) 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置) 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置) owner 属主,缩写u group 属组,缩写g other 其他,缩写o
chgrp(更改文件属组(Group))1 2 chgrp [-R] 属组名 文件夹名 -R递归更改文件属组 chgrp root 1.txt 修改1.txt的所属组为root
chown(更改文件所有者(owner),也可以同时更改文件所属组(Group))1 2 3 4 chown [–R] 所有者 文件名 -R递归更改文件属组 chown root 1.txt 修改1.txt的所有者为root chown [-R] 所有者:属组名 文件名 chown root:root 1.txt 修改1.txt的所有者和属组为root
chmod(更改文件9个属性)
r:4 w:2 x:1
1 2 3 4 5 6 每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的 例如当权限为:-rwxrwx--- 分数则是: - owner = rwx = 4+2+1 = 7 - group = rwx = 4+2+1 = 7 - others= --- = 0+0+0 = 0 则命令为 chmod 770 1.txt
2.7 解压缩 unzip 1 2 3 4 unzip 压缩包名 解压到当前目录 unzip -d /temp test.zip 解压到指定的目录下 unzip -l test.zip 只看zip压缩包中包含哪些文件,不进行解压缩
gzip 1 2 3 4 压缩 gzip -9(高度压缩(可选)) 文件名 压缩文件名+gz 即可 解压 gzip -d 压缩包
bzip2 1 2 3 4 压缩 bzip2 -9(高度压缩(可选)) 文件名 压缩文件名+bz2 即可 解压 bzip2 -d 压缩包
打包内容 1 2 3 4 5 6 7 8 9 10 11 12 13 14 tar -cvf a.tar xxx 打包多个内容为a.tar压缩包 tar -tvf a.tar 查看压缩包里有什么东西 tar -rvf a.tar 1.txt 追加1.txt到a.tar中 tar -xvf a.tar 解压a.tar 再进行压缩 gzip -9 a.tar 解压(一步到位) tar zxvf a.tar.gz 再进行压缩 bzip2 -9 a.tar 解压(一步到位) tar jxvf a.tar.gz
2.8 文件链接(link)
软连接
软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式 软链接可以对目录进行链接 软链接可以 跨文件系统 ,硬链接不可以
1 2 3 4 ln [参数][源文件或目录][目标文件或目录] -s 软连接 ln -s 源文件或目录 目标文件或目录 ln -s log2013.log link2013 为log2013.log文件创建软链接link2013
硬链接
硬链接,以文件副本的形式存在。但不占用实际空间 不允许给目录创建硬链接 硬链接只有在同一个文件系统中才能创建
1 2 ln log2013.log ln2013 为log2013.log创建硬链接ln2013,log2013.log与ln2013的各项属性相同
2.9 开关机相关 1 2 3 4 5 6 shutdown -h now 立即关机(root权限) halt 立即关机 shutdown -h 10 10 分钟后自动关机 shutdown -c 取消操作 shutdown -r now 重启 reboot 重启
2.10 系统管理 查看进程 1 2 3 4 ps -aux 静态查看系统进程 top 实时查看系统进程(快捷键 ↑下翻 ↓上翻 q退出)
关闭进程 1 2 kill 进程id 关闭进程 kill -9 进程id 强制关闭进程(谨慎使用)
2.11 用户管理 添加用户 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源 useradd 选项 用户名 选项: - -c comment 指定一段注释性描述。 - -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 - -g 用户组 指定用户所属的用户组。 - -G 用户组,用户组 指定用户所属的附加组。 - -s Shell文件 指定用户的登录Shell。 - -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 示例:useradd –d /home/sam -m sam 创建了用户sam,其中-d和-m选项用来为登录名sam产生一个主目录 /home/sam useradd -s /bin/sh -g group –G adm,root gem 新建了用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。 增加用户账号就是在/etc/passwd(用户密码所在地(加密存储))文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。
删除账户 1 2 3 4 从系统中删除不再使用的用户账号。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。 userdel 选项 用户名 userdel -r sam -r就是连同用户目录删除
修改账号相关信息 1 2 3 usermod 选项 用户名 usermod -s /bin/ksh -d /home/z –g developer sam 将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。
用户密码的设置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。 passwd 选项 用户名 选项: - -l 锁定口令,即禁用账号。 - -u 口令解锁。 - -d 使账号无口令。 - -f 强迫用户下次登录时修改口令。 当前如果登录sam 则直接passwd 输入对应信息即可 当前如果登录root(超级管理员) passwd [选项] sam 输入对应信息即可 passwd -d sam 删除sam的口令 passwd -l sam 锁定sam用户
用户相关文件解读
/etc/passwd
/etc/passwd中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式如下 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell 口令只是一个标识,真正的加密后密码在/etc/shadow中
/etc/shadows
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
2.12 网络服务 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ifconfig -a 查看ip信息 ip addr 查看ip信息 修改IP(重启会消失) ifconfig 网卡名称 IP地址 netmask 子网掩码 ifconfig eth0 192.168.1.3 netmask 255.255.255.0 修改IP(长久) vim /etc/network/interfaces文件 添加如下内容为静态IP auto eth0 iface eth0 inet static/(dhcp) address IP地址 netmask 子网掩码 gateway 网关
2.13 服务信息 1 2 3 4 5 6 systemctl status 服务名(sshd/mysql) 查看服务状态 systemctl start 服务名 启动服务 systemctl stop 服务名 关闭服务 systemctl restart 服务名 重启服务 systemctl disable 服务名 禁止开机自启动 systemctl enable 服务名 开机自启动
2.14 SSH配置 1 2 3 4 5 6 7 8 systemctl status sshd 查看SSH服务状态 /etc/init.d/ssh status 查看ssh的运行状态 /etc/init.d/ssh start 启动SSH服务 在/etc/ssh/sshd_config中取消注释 PermitRootLogin yes # 是否允许root用户登录 PasswordAuthentication yes # 是否使用密码验证,如果使用密钥对验证可以关了它 结束后重启SSH服务即可 /etc/init.d/ssh restart
2.15 权限管理
su和sudo的区别
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 su一般后面加的是用户 su(switch user) 用户名 切换到目标用户(提供目标用户的密码) su 123 切换到123 su 默认切换为root,切换到root用户但是pwd目录不变 su - root 切换到root用户,切换到root用户但是pwd目录/root sudo一般后面加的是命令(提供自身用户的密码) sudo cat /etc/sudoers 提升权限去直接命令(类似windows的以管理员身份运行) 谁能用sudo 在/etc/sudoers中定义 有时候会遇到sudo su 这是干嘛的呢? sudo su 运行 sudo 命令给 su 命令提权,运行 su 命令。 要求执行该命令的用户必须在 sudoers 中才可以。 即su执行无权限,需要提前再执行
2.16 文件下载 1 2 3 4 5 6 7 8 9 10 wget http://xxx/a.txt -o a.txt 下载文件并重命名 wget -c http://www.linuxsense.org/xxxx/xxx.tar.gz -c 支持断点续传 -b 后台下载 -e "https_prox=http://127.0.0.1:8087" 设置代理 curl http://www.linux.com www.linux.com 的html就会显示在屏幕 curl http://www.linux.com >> linux.html 内容写入文件 curl -o linux.html http://www.linux.com 下载到本地 -x "http://127.0.0.1:8080" 设置代理
其他 shell下 1 2 3 4 5 6 7 8 clear 清除屏幕 file 文件名 查看文件类型 md5sum 文件名 计算和校验文件的 MD5 值。 wc 单词统计 id 查看用户的 uid,gid 及归属的用户组。 df 系统磁盘空间的使用情况。 date 获取当前时间 cal 查看日历
特殊符号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ~ 表示帐户的 home 目录 / 代表根目录 * 通配符号 ; 命令的分隔符 & 顺序执行多条命令,而不管命令是否执行成功 && 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令 || 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令 | 管道命令 echo "hello world" | wc -w 输出2 统计单词数量 > 和 >> 均为重定向符号(指定文件不存在则自动创建) > 清除文件中原有的内容后再写入,相当于直接覆盖整个文件 >> 追加内容到文件末尾,而不会清除原有的内容 < 从文件中获得输入信息,而不是从屏幕上 echo 2005-05-01>temp.txt 写入内容到文件 date < temp.txt 从文件中读取 << 多行输入重定向符 wc -w << EOF heredoc> 123 heredoc> 123 heredoc> 123 heredoc> EOF 输出3
转义符号 1 2 3 4 \ 转义符号 示例: echo \<\?php 123\;\?\> > shell.php 将<?php 123;?> 写入文件
输出到空
查看系统信息 1 2 3 uname -a 查看版本和内核 cat /proc/version 查看版本信息 hostname 获取
参考链接 Windows命令官方文档 windows命令 远程桌面端口问题 Linux Manpages Online