基本linux命令有哪些呢?
1、ls命令
就是 list 的缩写,通过 ls 命令不仅可以查看 linux 文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。
常用参数搭配:
ls -a 列出目录所有文件,包含以.开始的隐藏文件
ls -A 列出除.及..的其它文件
ls -r 反序排列
ls -t 以文件修改时间排序
ls -S 以文件大小排序
ls -h 以易读大小显示
ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
实例:
(1) 按易读方式按时间反序排序,并显示文件详细信息
ls -lhrt
(2) 按大小反序显示文件详细信息
ls -lrS
(3)列出当前目录中所有以"t"开头的目录的详细内容
ls -l t*
(4) 列出文件绝对路径(不包含隐藏文件)
ls | sed "s:^:`pwd`/:"
(5) 列出文件绝对路径(包含隐藏文件)
find $pwd -maxdepth 1 | xargs ls -ld
2、cd 命令
cd(changeDirectory) 命令语法:
cd [目录名]
说明:切换当前目录至 dirName。
实例:
(1)进入要目录
cd /
(2)进入 "home" 目录
cd ~
(3)进入上一次工作路径
cd -
(4)把上个命令的参数作为cd参数使用。
cd !$
3、pwd 命令
pwd 命令用于查看当前工作目录路径。
实例:
(1)查看当前路径
pwd
(2)查看软链接的实际路径
pwd -P
4、mkdir 命令
mkdir 命令用于创建文件夹。
可用选项:
-m: 对新建目录设置存取权限,也可以用 chmod 命令设置;
-p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录。
实例:
(1)当前工作目录下创建名为 t的文件夹
mkdir t
(2)在 tmp 目录下创建路径为 test/t1/t 的目录,若不存在,则创建:
mkdir -p /tmp/test/t1/t
5、rm 命令
删除一个目录中的一个或多个文件或目录,如果没有使用 -r 选项,则 rm 不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。
rm [选项] 文件…
实例:
(1)删除任何 .log 文件,删除前逐一询问确认:
rm -i *.log
(2)删除 test 子目录及子目录中所有档案删除,并且不用一一确认:
rm -rf test
(3)删除以 -f 开头的文件
rm -- -f*
6、rmdir 命令
从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限。
注意:不能删除非空目录
实例:
(1)当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除:
rmdir -p parent/child/child11
7、mv 命令
移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。
当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。
实例:
(1)将文件 test.log 重命名为 test1.txt
mv test.log test1.txt
(2)将文件 log1.txt,log2.txt,log3.txt 移动到根的 test3 目录中
mv llog1.txt log2.txt log3.txt /test3
(3)将文件 file1 改名为 file2,如果 file2 已经存在,则询问是否覆盖
mv -i log1.txt log2.txt
(4)移动当前文件夹下的所有文件到上一级目录
mv * ../
8、cp 命令
将源文件复制至目标文件,或将多个源文件复制至目标目录。
注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!
-i 提示
-r 复制目录及目录内所有项目
-a 复制的文件与原文件时间一样
实例:
(1)复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖。
cp -ai a.txt test
(2)为 a.txt 建议一个链接(快捷方式)
cp -s a.txt link_a.txt
9、cat 命令
cat 主要有三大功能:
1.一次显示整个文件:
cat filename
2.从键盘创建一个文件:
cat > filename
只能创建新文件,不能编辑已有文件。
3.将几个文件合并为一个文件:
cat file1 file2 > file
-b 对非空输出行号
-n 输出所有行号
实例:
(1)把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
cat -n log2012.log log2013.log
(2)把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里
cat -b log2012.log log2013.log log.log
(3)使用 here doc 生成新文件
cat >log.txt <<EOF
>Hello
>World
>PWD=$(pwd)
>EOF
ls -l log.txt
cat log.txt
Hello
World
PWD=/opt/soft/test
(4)反向列示
tac log.txt
PWD=/opt/soft/test
World
Hello
10、more 命令
功能类似于 cat, more 会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示。
命令参数:
+n 从笫 n 行开始显示
-n 定义屏幕大小为n行
+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c 从顶部清屏,然后显示
-d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
-l 忽略Ctrl+l(换页)字符
-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
-s 把连续的多个空行显示为一行
-u 把文件内容中的下画线去掉
常用操作命令:
Enter 向下 n 行,需要定义。默认为 1 行
Ctrl+F 向下滚动一屏
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more
实例:
(1)显示文件中从第3行起的内容
more +3 text.txt
(2)在所列出文件目录详细信息,借助管道使每次显示 5 行
ls -l | more -5
按空格显示下 5 行。
11、less 命令
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
常用命令参数:
-i 忽略搜索时的大小写
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-s 显示连续空行为一行
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
-x <数字> 将“tab”键显示为规定的数字空格
b 向后翻一页
d 向后翻半页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一行
回车键 滚动一页
[pagedown]: 向下翻动一页
[pageup]: 向上翻动一页
实例:
(1)ps 查看进程信息并通过 less 分页显示
ps -aux | less -N
(2)查看多个文件
less 1.log 2.log
可以使用 n 查看下一个,使用 p 查看前一个。
12、head 命令
head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。
常用参数:
-n<行数> 显示的行数(行数为复数表示从最后向前数)
实例:
(1)显示 1.log 文件中前 20 行
head 1.log -n 20
(2)显示 1.log 文件前 20 字节
head -c 20 log2014.log
(3)显示 t.log最后 10 行
head -n -10 t.log
13、tail 命令
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
常用参数:
-f 循环读取(常用于查看递增的日志文件)
-n<行数> 显示行数(从后向前)
(1)循环读取逐渐增加的文件内容
ping 127.0.0.1 > ping.log &
后台运行:可使用 jobs -l 查看,也可使用 fg 将其移到前台运行。
tail -f ping.log
(查看日志)
14、which 命令
在 linux 要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:
which 查看可执行文件的位置。
whereis 查看文件的位置。
locate 配合数据库查看文件位置。
find 实际搜寻硬盘查询文件名称。
which 是在 PATH 就是指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果。使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
常用参数:
-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
实例:
(1)查看 ls 命令是否存在,执行哪个
which ls
(2)查看 which
which which
(3)查看 cd
which cd(显示不存在,因为 cd 是内建命令,而 which 查找显示是 PATH 中的命令)
查看当前 PATH 配置:
echo $PATH
或使用 env 查看所有环境变量及对应值
15、whereis 命令
whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。whereis 及 locate 都是基于系统内建的数据库进行搜索,因此效率很高,而find则是遍历硬盘查找文件。
常用参数:
-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
实例:
(1)查找 locate 程序相关文件
whereis locate
(2)查找 locate 的源码文件
whereis -s locate
(3)查找 lcoate 的帮助文件
whereis -m locate
2. ADB常用命令
android 调试桥 (adb) ,可与设备进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:
客户端: 用于发送命令。客户端在开发机器上运行。可以通过发出 adb 命令从命令行终端调用客户端。(可以通过它对Android应用进行安装、卸载、调试)
PC上的手机助手基本都是通过adb命令去完成的。有时候装了这类手机助手的话,它自带的adb程序可能会与Android SDK下的adb程序产生冲突,5037端口被占用,导致adb命令无法连接到设备。Windows下通过netstat -ano|findstr "5037"
守护程序 (adbd): 用于在设备上运行命令。守护程序在每个设备上作为后台进程运行
执行adb shell ps | grep adbd, 可以找到该后台进程,Windows使用findstr替代grep.
adb nodaemon server
服务器(Service): 用于管理客户端与守护程序之间的通信。服务器在开发机器上作为后台进程运行
adb服务启动后,Windows可以在任务管理中找到adb.exe; linux ps -ef | gref adb 可以查看service
一般都是通过这样子的格式 adb [-d|-e|-s <设备序列号>] <子命令>
通常只有一台设备就忽略 [-d|-e|-s ] 这一部分
这里介绍一些常用的命令:
获取设备列表及设备状态
获取设备的状态
注意:设备的状态有 3 钟,device , offline , unknown
device:设备正常连接
offline:连接出现异常,设备无响应
unknown:没有连接设备
结束 adb 服务
启动 adb 服务
注意:通常两个命令一起用,有时候我们开启server会失败,这是因为我们装了的手机助手,豌豆荚或者其他软件自带有自己的adb,导致端口冲突开启失败。一般在连接出现异常,使用 adb devices 未正常列出设备, 设备状态异常时使用 kill-server,然后运行 start-server 进行重启服务。
打印 Android 的系统日志
打印 mpsys、mpstate、logcat 的输出,也是用于分析错误输出比较多
打印日志后重定向到一个文件中
安装应用,覆盖安装是使用 -r 选项
注意:有些adb版本无法支持安装中文的apk
查看手机应用包名
查看应用对应的apk文件在手机上的安装位置则可以在上面的命令后加-f参数
卸载应用,后面跟的参数是应用的包名,请区别于 apk 文件名
'-k' means keep the data and cache directories , -k 选项,卸载时保存数据和缓存目录
将 Android 设备上的文件或者文件夹复制到本地
adb pull /sdcard/test.txt C:\Users\Administrator\Desktop\log
推送本地文件至 Android 设备
获取连接到的手机的序列号
获取设备的连接状态
等待设备连接成功
该命令将会阻塞一直到默认连接的那部机器状态变为device,也就是连接成功。
其实adb shell命令就是调用的是Android设备中的system/bin目录下的命令。
Android的内核本身就是Linux,所以Android本身也支持Linux命令,但是因为是手机系统,所以进行了一定的删减,部分命令不支持,而不支持的部分,我们可以通过安装busybox这个软件进行。
如何在手机中执行Shell命令?
每次都加上adb shell来进行命令的发送与执行
先通过adb shell进入手机Shell执行状态,然后直接输入Linux命令。
使一个apk处于禁用状态,相当于卸载了:
其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobile
eg:adb shell su disable com.UCMobile/.main.UCMobile
同时我们在手机上发现,UC浏览器的图标不见了
让一个apk从禁用状态恢复过来
其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobileeg:
adb shell su enable com.UCMobile/.main.UCMobile
同时我们从手机上发现,UC浏览器的图标又出现了。
查看一个apk所在的路径
adb shell pm path com.UCMobile
查看手机中装的所有的包
屏幕开始录像并且储存到/sdcard中,同时名字为demo.mp4
录屏设置时长10s,命名为demo.mp4
注意:现在仅支持一部分手机录屏,不支持的手机会出现以下提示
解决方法:
安装了scrcpy之后,只需要输入如下命令,即可录取指定设备的屏幕
scrcpy -s device --render-expired-frames -Nr ./demo.pm4
--render-expired-frames:尽可能最大帧率
-N:不在PC端展示
-r:录制mp4/mkv文件
关闭设备请求,开启设备
设备关机以及重启
pm(package manager)可以获取一些安装到Android设备上的app的信息
pm list packages 用法:list packages [ options] filter
获取所有的应用的包名
列出系统应用
列出第三方应用
查看它们的关联文件
adb shell pm list package -f
查看软件包的安装来源
pm mp 包名 很多mp信息
安装应用
apk如果在电脑用 adb install
如果在Android设备上用 adb shell pm install
卸载应用,同adb uninstall ,后跟包名
清除应用数据
am(activity manager,字面意思就跟activity有关,大家都知道Android的界面都是由一个个activity显示的)
启动一个Activity
获取到package和launch_activity
AndroidSDK中aapt工具,检索命令结果,可以获取到package和launch_activity
这里涉及到一个点,如何找到程序的入口,首先你要知道是哪个activity才能启动;
启动华为系统相机
打开音乐播放器
播放指定音乐:
先停止目标应用,再启动
等待应用完成启动
启动网页(android.intent.action.VIEW具体参考Android官网)
结束应用
input
模拟输入,向获得焦点的EditText控件输入内容
返回主界面
发送一个点击操作的指令,参数是<x> <y>坐标
从左往右滑动屏幕, /从 100 100 经历300毫秒滑动到 200 200
长按操作,在 100 100 位置长按 1000毫秒
3. 软件测试中常用的Linux命令有哪些
软件测试必须掌握的----常用linux命令总结
Dotest测试学堂-董浩
命令 解释
cd 进入目录或退出至主目录;例:“cd /home” 表示进入home目录下
cd .. 退出至上一级目录
cp
ifconfig 查看linuxIP的命令;注:ipconfig是查询windowsIP的
修改IP即时生效:ifconfig eth0 192.168.1.155 netmask 255.255.255.0
rm -rf 强制删除目录或文件;r代表删除目录,f代表强制删除
mv 移动文件或改名;例:“mv test /home” 表示将test移动至home目录下;“mv test test1”表示将test改名为test1
mkdir 创建文件夹;例:“mkdir dodo”表示创建dodo文件夹
ps -ef 查看进程信息;ps -ef |grep ssh :查看ssh进程的信息
top 进程管理器;top -M
df 查看磁盘使用状况 df -m
tar -xzvf 解压安装包;tar -xzvf +软件包
apt-get install 下载并安装;apt-get install +软件包名
wget+网址 下载对应网址的软件包
yum install + 软件包 下载且安装
rpm -ivh +软件包 安装以rpm结尾的软件包;rpm -ivh +包名
./+可执行程序 ./jdk-6u31-linux-i586-rpm.bin:运行
find 查找系统中的文件;find / -name+文件名
find / -name apache:在当前目录下搜索以apache开头的文件
man 命令解析;“man find” 表示将find命令详解展示
ls -l\ll\ls -a ls -l 和ll 是一样的作用。ll是ls-l的别名。显示详细信息;ls -a:查看隐藏文件+详细信息
kill -9 结束进程;kill -9 +进程号;kill -15
clear 清屏操作
cat 查看文件内容
pwd 查看当前目录结构;绝对路径
vi 编辑文件;注:编辑进入文件后,“i”:代表输入;“a”:当前光标的下一位;“:wq”:代表退出并保存(在输入状态下,需按下Esc键);“:q!”:代表不保存退出;“x”:代表删除单个字符;“dd”代表删除一行数据。
shift+g:快速到最后一行
/+匹配的内容:退出编辑状态下,向下快速搜索匹配内容【n:寻找下一个】
?+匹配的内容:退出编辑状态下,向上快速搜索匹配内容【n:寻找下一个】
touch 表示创建文件;touch .dotest:创建隐藏文件
chmod 给文件以权限;2:写;4:读;1:运行;例:chmod 461 test;表示:给文件拥有用户写的权限,所在组读写权限,其它组用户运行权限。
chmod -R 777 wenjianjia:给我文件夹及文件夹下面的所有文件赋值权限
useradd useradd dotest:创建dotest用户
passwd passwd dotest :给用户设置密码;密码输入两次且不显示
su 切换用户;“su - root”切换至root账户
whoami 查看当前登录的是哪个用户
service 服务名 restart 重启某个服务;service mysql restart【重启数据库】\service network restart【重启网卡】
重启网卡 /etc/init.d/network restart
grep grep 1 dotest:搜索文件dotest中匹配包含1所有的信息并显示出来
history history查看历史命令
tail 滚动查看日志;tail + 数量 + 文件名
tail -f log【滚动查看日志】
tail -n 5 logs 【查看最后5行】
head 匹配前几行;head -n 4 log
重启系统 reboot
关机 shutdown 0
date 查看时间;
date -s "2018-03-05 9:00:00"
常用文件 /etc/rc.local;存放自启动命令的
/etc/profile;存放环境变量设置;
source /etc/profile 快速生效
/etc/sysconfig/network-scripts中的ifcfg-eth0;查看网卡信息的
/etc/crontab;定时任务;
* * * * * +要执行的脚本【完整路径】
o minute: 区间为 0 – 59
o hour: 区间为0 – 23
o day-of-month: 区间为0 – 31
o month: 区间为1 – 12. 1 是1月. 12是12月.
o Day-of-week: 区间为0 – 7. 周日可以是0或7
例子:
每个月的第一天 1:10 p.m 运行
10 13 1 * * /root/bin/full-backup.sh
查看主机名 hostname
修改主机名 vi /etc/hosts或者hostname + 主机名
软件包 --version 查看版本信息;
svnserve --version
java --version
4. ubuntu常用命令
②cd / ##打开系统根目录
③ls ##列出文件和目录
④cd /home
⑤cd 和 cd ../..和 cd ~类似 ##进入用户主目录
⑥cd /etc ##该目录下存放着系统和软件的配置文件
⑦cat fstab ##其中定义了各硬盘分区所挂在的目录路径
⑧pwd ##显示当前所在的目录
⑨cd .. ##退到上一级目录
①ls -F ##会自动在列出的可执行文件后面加*,目录后面加/,链接后面加@
②ls –a ##查看该目录下的隐藏文件,默认前面加.
③ls –l ##可以查看该目录下文件的属性,会显示后缀名
④ls /etc ##ls命令后面还可以跟路径,查看该路径下的内容
⑤dir /etc ##列出目录内容和ls相似
⑥vdir /etc ##和ls –l相似,列出目录和文件的详细信息
⑦cat 文件名 ##查看文本文件
⑧cat –n 文件名 ##主要是-n可以显示行号
⑨more 文件名 ##类似于cat,它适合于查看大文件,进行一页一页的查看,空格键向下查看一页,enter键向下查看一行,按q键退出
⑩head 和 tail 指令可以查看指定文件的头和尾,并指定显示的行数,例如:head –n 2(行数) 文件名
⑪less /etc/con.cfg ##类似于more,文本阅读指令,less指令执行完后会有一个:,如果想向下翻页按空格键,如果想向上翻页按B键,如果想搜索一个字符串可以用/字符串来搜索,最后按q键退出
① grep un day ##可以在文件day中查找包含un的行,可以快速找到,也可以指定多个文件,例如:grep unday weather;
② grep ‘struct list’stack.h ##如果要查找关键词,必须用单引号括起来
① firefox ##从终端启动火狐浏览器或firefox&
② whereis -b find ##查找特定程序文件,-b使用来查询这个文件的可执行二进制文件,如果没有找到返回一个空的字符串
③ who ##该指令可以查看当前服务器中有哪些用户登录
④ whoami ##查看当前登录用户
⑤ uname–a ##显示当前系统的所有有用信息
⑥ uname–r ##只显示当前系统的内核版本信息
⑦ man find ##寻求帮助命令,可以查看命令的使用手册等
① rm test
删除指令,删除文件test
② cd ~
mkdir picture document
③ mkdir~/picture/temp
④ mkdir –p ~/picture1/temp
⑤ touch helloworld
⑥ ls –l test.php
⑦ touch test.php
更新文件创建的日期
⑧ mv hello /bin
mv photos/ /bin
当一个目录下有相同名的文件时,mv指令移动文件会覆盖原有文件,并没有任何提示。因此mv指令提供了-i选项,用来进行提示,避免覆盖出错
⑫ rmdir home ##删除目录指令,只能删除空目录
⑬ rm /home/ .php ##删除文件或目录指令,删除后不能恢复且不会提示删除,我们可以使用-i选项来让他进行提示,避免删除错误(rm –i /home/ .php),对于只读文件的删除,不加-i选项也会提示
⑭ rm –f hello_bak ##对于只读文件的删除,如果确定要删除,避免进行交互操作,可以用-f选项直接删除,他的默认回答是y。
⑮ rm -r /home ##递归的进行删除,连同子目录一块删除
简单命令六:权限设置
r(读),w(写),x(执行)三种权限
① ls -l /home/login ##带有-l的ls指令可以查看文件的完整属性,包括权限等。
② ls -lb /home ##查看目录完整属性,用-lb选项
③ ls -l ##不带文件名作为参数,表示列出当前目录下的所有文件
③ su ##切换到root用户
挂载
卸载
命令用于查看使用空间,命令是对文件和目录磁盘使用的空间进行查看
实例:
安装:apt-get install tree
直接输入tree命令会自以树形列出当前目录的文件和文件夹,不加任何参数,tree会自动列出当前目录下所有深度级别的文件和目录
导出目录到文件
In命令用来为文件创建连接,连接类型分为硬连接和符号连接,默认的链接类型是硬连接。如果要创建符号连接必须使用-s选项
硬连接
在执行ln命令之前,/usr/test1.c中不存在test1.c。执行之后,在/usr目录中才有test1.c,表明存在于/opt/test.c和/usr/test1.c这个目录连接起来。
软连接
也就是在/usr/test1.c目录下建立符号链接指向/opt/test.c这个文件
.tar.gz
.tar.bz2
.tgz
.zip
.rar
.tar
.gz
.bz2
.bz
Alt + F1 :聚焦到桌面左侧任务导航栏,可按上下键进行导航
Alt + F2 :运行命令
Alt + F4 :关闭当前窗口
Alt + Tab :切换程序窗口
Alt + 空格 :打开窗口菜单
PrtSc :桌面截图
Win + A :搜索/浏览程序
Win + F :搜索/浏览文件
Win + M :搜索/浏览音乐文件
Win :搜索/浏览程序、文件、音乐文件等
alt+Tab : 电脑多屏幕切换
wn+p :电脑多个屏幕调节
win+Tab :打开界面选择切换
win+数字 :左侧菜单数字切换
ctrl+箭头 :每次向左或向右跳过一个单词
ctrl+Tab :浏览器切换
win+r :刷新网页
Ctrl + Alt + T :打开终端
Tab :命令或文件名自动补全
Ctrl + Shift + C :复制
Ctrl + Shift + V :粘贴
Ctrl + Shift + T :在同一个窗口新建终端标签页
Ctrl + Shift + W :关闭标签页
Ctrl + Shift + N :新建终端窗口
Ctrl + Shift + Q :关闭终端窗口
Ctrl + Shift + PageUp :标签页左移
Ctrl + Shift + PageDown :标签页右移
Ctrl + D :关闭标签页
Ctrl + L :清除屏幕
Ctrl + C :终止当前任务
Ctrl + P :显示上一条历史命令
Ctrl + N :显示下一条历史命令
Ctrl + R :反向搜索历史命令
Ctrl + J/M :回车(同enter键功能)
Ctrl + A :光标移动到行首
Ctrl + E :光标移动到行尾
Ctrl + B :关闭想后移动一个位置(backward)
Ctrl + Z:把当前任务放到后台运行
Ctrl + PageUp :前一个终端标签页
Ctrl + PageDown :下一个终端标签页
F1 :打开帮助指南
F11 :全屏切换
Alt + F :打开“文件”菜单(file)
Alt + E :打开“编辑”菜单(edit)
Alt + V :打开“查看“菜单(view)
Alt + S :打开“搜索”菜单(search)
Alt + T :打开“终端”菜单(terminal)
Alt + H :打开“帮助”菜单(help)
Ctrl + → :光标移动到上一个单词的词首
Ctrl + ← :光标移动到下一个单词的词尾
Ctrl + T :将光标位置的字符和前一个字符进行位置交换
Ctrl + U :剪切从行的开头到光标前一个位置的所有字符
Ctrl + K :剪切从光标位置到行末的所有字符
Ctrl + Y :粘贴Ctrl + U/Ctrl + K剪切的内容
Ctrl + H/* :删除光标位置的前一个字符(backspace键功能)
Ctrl + D :删除光标位置的一个字符(delete键功能)
Ctrl + W :删除光标位置的前一个单词(Alt + Backspace组合键功能)
Ctrl + & :恢复Ctrl + H/D/W删除的内容
Ctrl + Win + ↑ :最大化当前窗口
Ctrl + Win + ↓ :还原/最小化当前窗口
Ctrl + Win + D :最小化所有窗口
Win + W :展示所有窗口
Win + T :打开回收站
tttt2次连续Tab/4次连续Esc/2次连续Ctrl + I:将显示所有命令和工具名称
Ctrl + N :新建文档
Ctrl + W :关闭文档
Ctrl + S :保存文档
Ctrl + Shift + S :另存为
Ctrl + F :搜索
Ctrl + H :搜索并替换
Ctrl + I :跳到某一行
Ctrl + C :复制
Ctrl + V :粘贴
Ctrl + X :剪切
Ctrl + Q :退出
5. 我的世界的各种指令。
按“T”或直接输入“/”打开语言栏,即可在语言栏中输入指令
/clear 清空背包
/difficulty 调整难度(0:和平 1:简单 2:普通 3:困难)
/effect 获得效果(1速度 2缓慢 3急迫 4挖掘疲劳 5力量 6瞬间治疗 7瞬间伤害 8跳跃提升 9反胃 10生命恢复 11抗性提升 12防火 13水下呼吸 14隐身 15失明 16夜视 17饥饿 18虚弱 19中毒)
/enchant 手中的装备会被附魔(目前不清楚附魔ID)
/gamemode (0:生存 1:创造 2:冒险)
/give <玩家名> <物品ID> <数量> (给东西的指令)
/me 命令台会跟你卖萌
/playsound <文件名> <玩家名> <坐标(x,y,z)> <音量>
/say <文本信息>会让命令台发送广播消息
/give给予人 物品id 数量 - 给予某人物品,如果不写数量则给予数量默认为64
/nick ID名称 -给某人改一个名 ID是加白名单的名字
/backup-运行备份命令
/fireball-发射一个火球(会破坏方块)
/heal name-治疗某人
/invsee name-查看某人的包裹
/lingtning name-天谴(不填写名字会雷击鼠标指向的地方)
/mute name-禁言某人
/ping-乒乓
/seen name-查看某人最后退出的时间
/tp name1 name2-将人物1传送至人物2身旁
/tp name-将自己传送至某人身旁
/tphere name-将某人传送至自己身旁
/tpall-将服务器内的所有人传送至自己身旁(大传送阵)
/unlimited id-给予自己无限的某物品
/weather storm/sun time-改变天气,雷雨或晴天
/mmoedit name skname rank-如果安装了MCRPG插件可以用这个命令改变某人的某项技能等级unarmed
/forestgen-在自己身旁形成森林
/pumpkins-在自己身旁形成南瓜林(带叶子的南瓜林)
/snow-在自己的身旁成为雪后的样子
/thaw-融雪(和冰)
/butcher-杀死附近的怪物
/tree树形 -生成一棵树(树形不填也可以)
6. linux基本命令
Linux 对我们的生活产生了巨大的冲击。至少你的安卓手机使用的就是 Linux 核心。尽管如此,在第一次开始使用 Linux 时你还是会感到难以下手。因为在 Linux 中,通常需要使用终端命令来取代 Windows 系统中的点击启动图标操作。但是不必担心,这里我们会介绍 10 个 Linux 基本命令来帮助你开启 Linux 神秘之旅。
帮助新手走出第一步的 10 个 Linux 基本命令
当我们谈论 Linux 命令时,实质上是在谈论 Linux 系统本身。这短短的 10 个 Linux 基本命令不会让你变成天才或者 Linux 专家,但是能帮助你轻松开始 Linux 之旅。使用这些基本命令会帮助新手们完成 Linux 的日常任务,由于它们的使用频率如此至高,所以我更乐意称他们为 Linux 命令之王!
让我们开始学习这 10 条 Linux 基本命令吧。
1. sudo
这条命令的意思是“以超级用户的身份执行”,是 SuperUserDo 的简写,它是新手将要用到的最重要的一条 Linux 命令。当一条单行命令需要 root 权限的时候,sudo命令就派上用场了。你可以在每一条需要 root 权限的命令前都加上sudo。
$ sudo su
2. ls
跟其他人一样,你肯定也经常想看看目录下都有些什么东西。使用列表命令,终端会把当前工作目录下所有的文件以及文件夹展示给你。比如说,我当前处在 /home 文件夹中,我想看看 /home 文件夹中都有哪些文件和目录。
/home$ ls
在 /home 中执行ls命令将会返回类似下面的内容:
imad lost+found
3. cd
变更目录命令(cd)是终端中总会被用到的主要命令。它是最常用到的 Linux 基本命令之一。此命令使用非常简单,当你打算从当前目录跳转至某个文件夹时,只需要将文件夹键入此命令之后即可。如果你想跳转至上层目录,只需要在此命令之后键入两个点 (..) 就可以了。 举个例子,我现在处在 /home 目录中,我想移动到 /home 目录中的 usr 文件夹下,可以通过以下命令来完成操作。
/home $ cd usr
/home/usr $
4. mkdir
只是可以切换目录还是不够完美。有时候你会想要新建一个文件夹或子文件夹。此时可以使用 mkdir 命令来完成操作。使用方法很简单,只需要把新的文件夹名跟在 mkdir 命令之后就好了。
~$ mkdir folderName
5. cp
拷贝-粘贴-and-paste是我们组织文件需要用到的重要命令。使用 cp命令可以帮助你在终端当中完成拷贝-粘贴操作。首先确定你想要拷贝的文件,然后键入打算粘贴此文件的目标位置。
$ cp src des
注意:如果目标目录对新建文件需要 root 权限时,你可以使用 sudo命令来完成文件拷贝操作。
6. rm
rm 命令可以帮助你移除文件甚至目录。如果不希望每删除一个文件都提示确认一次,可以用-f参数来强制执行。也可以使用-r参数来递归的移除文件夹。
$ rm myfile.txt
7. apt-get
这个命令会依据发行版的不同而有所区别。在基于 Debian 的发行版中,我们拥有 Advanced Packaging Tool(APT)包管理工具来安装、移除和升级包。apt-get 命令会帮助你安装需要在 Linux 系统中运行的软件。它是一个功能强大的命令行,可以用来帮助你对软件执行安装、升级和移除操作。
在其他发行版中,例如 Fedora、Centos,都各自不同的包管理工具。Fedora 之前使用的是 yum,不过现在 dnf 成了它默认的包管理工具。
$ sudo apt-get update
$ sudo dnf update
8. grep
当你需要查找一个文件,但是又忘记了它具体的位置和路径时,grep命令会帮助你解决这个难题。你可以提供文件的关键字,使用grep命令来查找到它。
$ grep user /etc/passwd
9. cat
作为一个用户,你应该会经常需要浏览脚本内的文本或者代码。cat命令是 Linux 系统的基本命令之一,它的用途就是将文件的内容展示给你。
$ cat CMakeLists.txt
10. poweroff
最后一个命令是 poweroff。有时你需要直接在终端中执行关机操作。此命令可以完成这个任务。由于关机操作需要 root 权限,所以别忘了在此命令之前添加sudo。
$ sudo poweroff
总结
如我在文章开始所言,这 10 条命令并不会让你立即成为一个 Linux 大拿,但它们会让你在初期快速上手 Linux。以这些命令为基础,给自己设置一个目标,每天学习一到三条命令,这就是此文的目的所在。
7. 别不信!掌握好这20条Linux基础命令,让你的操作效率直接双倍
今日分享开始啦,请大家多多指教~
linux 系统中采用了多用户的管理方式使用系统
默认用户是root,有最高的权限。(在终端显示为 #)
普通用户为:$
在linux系统中没有盘符的概念,以树的形式管理文件
整个系统的根文件为 /
# 目录结构
linux系统中命令的使用
在使用linux系统命令的时候,严格区分大小写
使用命令的语法: 命令 [-选项] 参数
clear 清屏
1.ls命令
ls 显示文件和目录列表(list)
常用参数:
-l (long) 长格式显示文件和目录信息
-a (all) 显示所有文件和目录(包含隐藏文件和目录)
-R 递归显示指定目录下的文件清单,即会显示指定目录分支内各子目录中的文件清单。
ls -R ,会递归显示目录下的文件。
查看指定目录下的文件
ls /(指定目录) 例如:ls /etc
查看文件和目录的组合使用命令
例如 ls -la 指定目录 查看目录下所有文件并且长格式展示
2. cd 命令
cd 切换的目录名
pwd 显示当前所在目录
cd /root 回家目录 或者 cd ~ 或者 cd 快速回家
3.常用操作文件命令
4.ls -l 长格式说明
5.网络相关命令
ip addr 查看当前服务器地址
简写: ip a
ping ip地址 测试网络连通性
会一直ping 。Ctrl+c 结束
6.压缩相关命令
tar 命令
-c 建立一个压缩文件的参数指令(create) 打包 .tar
-x 解开一个压缩文件的参数指令(extract)解压
-z 是否要用 gzip 压缩 压缩 .tar.gz
-v 压缩过程中显示文件(日志)
-f 指定打包名字,f后紧跟名字(必有)
例如: tar -zcvf linux.tar.gz aa.txt bb.txt
tar -zxvf linux.tar.gz
7.centos独有 服务命令
systemctl
8.进程相关
ps 查询当前控制台上运行的进程
动态显示进程 top
杀死进程 kill
9.vi 命令
vi /vim 是linux最常用的文本编辑器,功能非常强大。
vi 有三种模式 :
常用命令
10.软件相关的命令
rpm 命令 需要有rmp 的安装包
rpm -ivh gcc-c+ 4.4.7-3.e16.x86_64.rpm
yum命令 [好用,自动检测依赖下载]
使用yum命令必须连接外部网络。
11.用户和组相关命令
1.查看当前用户:whoami
查看登录用户:who
退出用户 exit
添加、删除组账号:groupadd、groupdel
添加用户账号:useradd
设置用户名密码:passwd [用户名]
su 切换用户
12.权限相关命令
linux 文件有三种权限,r读,w写,x执行;r=4,w=2,x=1
chmod
今日份分享已结束,请大家多多包涵和指点!
如何获取?
转发分享此文,后台私信我:“1”即可获取。(注:转发分享,感谢大家)
8. Linux常用命令
列出当前目录的文件
常用参数:
-a: 显示当前目录的所有文件,包含隐藏文件;
-l: 显示文件详情;
-Z: 显示文件的 SE Linux context。
示例:ls -laZ [if !vml] [endif] 以 acct 为例: drwxr-xr-x:其中 d 代表该文件为目录,若为 l 则为软链接,软连接后又箭头代表其实际指向的文件,如etc -> /system/etc 则访问 etc 实际等同访问/system/etc,留空则代表该文件为一个文件;rwxr-xr-x 代表其权限为 755,具体算法为将上述字段每 3 个分为 1 组得 rwx,r-x,r-x,凡是有字母标记的皆计数 1,反之为 0,得二进制 111,101,101,转为 10 进制数字即得7, 5,5 ,即为该文件权限; root root :依次代表该文件的所有者(owner)为 root,用户组(group)为 root,上述属性可通过 chown 命令修改,日常替换文件需与原文件该属性维持一致; unlabeled:代表 SE Linux context。
前往指定目录
更改文件所有者和用户组 示例:chown root:root temfile 将 tmpfile文件 的所有者和用户组从 meidia:media 更改为 root:root
将文件内容显示出来。
注意不要随便去 cat 一个很大的文件或与 log 驱动节点无关的文件,否则将造成串口输出乱码或死机!!!示例:cat /proc/kmsg 将打印出所有 kernel log。
用于抓取 android logcat 打印。
常用参数:
-v : 设置打印格式,可用选项为 brief process tag thread raw time threadtime long,我们比较常用 logcat -v time,此时抓的 log 将在每一行开头添加时间信息;
-s : 设置过滤器,过滤器的选择取决于软件中打印 log 时使用的 TAG ,如
ActivityManagerService.java 中的打印使用的 TAG = ActivityManager,则抓相关打印方法为 logcat -s ActivityManager;
-c : 清除 log 缓存,常用于清除之前的打印缓存,如复现某个必现问题,则可先执行 logcat -c 再抓 logcat 重现必现手法以排除无关 log 冗余信息影响问题定位; pm
包管理命令,用于管理安卓 app 应用。
常用参数:
-l : 显示所有安装包应用,等同于 pm list packages
以 package:/system/priv-app/Launcher2.apk=com.android.launcher 为例:
Apk Launcher2 路径位于/system/priv-app/Launcher2.apk,其包名为 com.android.launcher
path : 根据报名返回所在 apk 路径
install : 安装 apk
-r :安装一个已经存在的 apk 并保留其数据;
-d : 允许降级安装
如:pm install -r xxx.apk
uninstall : 卸载 apk,命令仅支持卸载 data/app,后接包名;
如:pm uninstall com.sys.migusmartlink.ott.tv //卸载包名为 com.sys.migusmartlink.ott.tv 的 apk
随机测试指令,会自动模拟一些用户操作对 APP 进行压力测试。
常用参数:
-p :指定启动的 APK,我们比较常用的是 monkey -p com.xxx.yyy 1 来启动一个 apk 的随机页面。
用于启动和管理 activity 和 service
常用参数:
start : 后接 intent 启动一个页面;
startservice : 后接 intent 启动一个 service; stopservice :后接 intent 停止一个 service; broadcast :后接一个 intent 发送一个广播; kill :后接一个 app 包名,杀掉该 app 所有进程;在 shell 环境下用如下参数表述一个 intent:
[-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--esn <EXTRA_KEY> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[--el <EXTRA_KEY> <EXTRA_LONG_VALUE> ...]
[--ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE> ...]
[--eu <EXTRA_KEY> <EXTRA_URI_VALUE> ...]
[--ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE>]
[--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]]
[--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]]
[--efa <EXTRA_KEY> <EXTRA_FLOAT_VALUE>[,<EXTRA_FLOAT_VALUE...]]
[-n <COMPONENT>] [-f <FLAGS>]
示例:
如我们在 logcat 抓到如下打印启动了播放器:
START u0 {act=android.intent.action.VIEW dat=file:///storage/external_storage/sda1/[4KH265_60.000fps_9Mbps]Wetek-Astra-2m.mp4 typ=video/* flg=0x13000000 cmp=com.meson.videoplayer/.VideoPlayer} from pid 15204
则我们可以使用如下 am 指令来启动它:
am start -a android.intent.action.VIEW -d file:///storage/external_storage/sda1/[4KH265_60.000fps_9Mbps]Wetek-Astra-2m.mp4 -t video/* -f 0x13000000 -n com.meson.videoplayer/.VideoPlayer am start -n com.android.settings/.Settings //启动原生安卓设置主页
am broadcast -a com.chinamobile.action.KEY_PRESS_DOWN --ei keyCode 11 && am broadcast -a com.chinamobile.action.IR_TEST --es irphycode "0x008EDD22" //发送广播
查找命令,查找文件中是否包含指定字符串并输出该行示例:
grep -rns "repeat" /system/etc/remote1.conf //找出/system/etc/remote1.conf 所有包含 repeat 的行并展示行号
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
命令示例:cp -a a parentPath/sonPath/ a对应当前文件夹下目录或文件名 可替换为绝对路径
移动指令,等效于 windows 的移动和重命名。
示例:
mv /data/tmp1 /data/local/tmp2 //将 data/tmp1移动到/data/local/ 并重命名为 tmp2
删除指令,用于删除文件和文件夹,示例:
rm -rf tmp // 删除 tmp,建议加上-rf参数,其会删除 tmp 所有的目录和文件。
创建目录。常用参数:
-p :若 mkdir -p 后接路径包含不存在路径则一并创建。
同步命令,常用于 cp 替换文件或指令结束后同步状态,有益无害。
重定向,即将一个命令的输出指向另外路径的文件,使用覆盖模式,即重定向到的文件若存在将覆盖里面的内容。
示例:
logcat > /data/xxx.log; //将 logcat输出到/data/xxx.log;
cat /proc/kmsg > /data/kmsg.log; //将 kmsg 打印输出重定向到/data/kmsg.log
重定向,即将一个命令的输出指向另外路径的文件,使用拼接模式,即重定向到的文件若存在则将输出拼接到原文件的后面。
示例:
logcat > >/data/xxx.log; //例如我们做 netreboot的时候需要每一次开关机的 log,则会用拼接模式记录log。
将指令放至后台静默执行。
依次执行指令,若有指令执行失败,则后续指令不会执行。
示例:
logcat -c && logcat //先清除 logcat 缓存再抓取 log
9. Linux文本操作常用命令
在Linux系统里常用于文本查看、操作、统计的命令:
通过多敲键盘,形成手感 肌肉记忆 ,熟练掌握这些命令,在以后生信分析中游刃有余。以下是每个命令的详细的介绍(主要是跟着 生信技能树小郭老师 学习做的笔记)
接下来通过示例把10个命令的常用参数和用法展示出来:
参数的用法介绍:
注意事项:
用 cat 命令可以 查看文本 ,也可以 编辑文本 ,编辑文本要加 > 符号,退出时,另起一行,按 control C 退出
zcat可以查看压缩的文本文件,tac逆向查看
结合 管道符| 使用
head / tail -n :查看文件的前 / 后 n 行,默认 10 行 (在R语言里head和tail默认是前6行)。
less命令用得最多 ,more命令用得比较少
3.1 less命令
less [参数] 文件名
less命令重要的补充用法1 :
需要注意 退出 :只要使用less命令, 按q键
less命令重要的补充用法2 :
参数用法:
less命令 不加参数 查看文件:
less命令加 -N参数 查看文件:显示行号
less命令加 -S参数 查看文件:单行显示,非常规整
对比:less和cat命令显示文本行号的用法:less -N,cat -n
3.2 more命令
**more ** 逐页查看,按空格翻页,按回车换行 ,more命令一般很少用,熟练掌握less命令就好
查看压缩文件
wc 统计字符是也把换行符统计进去,但是别的命令不一定会把换行符算进去,。
常见参数:
切记:用less命令,按q退出
cut命令是按关键词来切的
常见参数:
排列前:
排列后:
解释:1和0比,1大;7和0比,7大…在sort字典排序里,100816比1737小,所以100816排在前面。
命令行查看一个表格结构时,因为制表符对齐的原因,出现一个错位的现象。还有 字典排序 可能和我们平时的认知不一样,所以 加上-n参数 , 让数值有数学意义上的大小来排序 。
uniq命令去重,只有两行出现重复,而且是相邻的两行,如果不相邻,即使出现两行一模一样,不会去重。
uniq命令通常和sort命令搭配使用
换其它文件试试
总之,uniq命令使用时经常和sort一起
常见参数:
常见用法1:
paste file1 file2
-s :按行合并 演示
常见用法2 : paste - -
常见参数:
要养成一个好习惯,原始数据不要轻易修改,修改的东西另外保存,文本保存用> (重定向)或是 >>(追加)
1. 用 less 查看 example.gtf ,然后管道符传递给 wc
2. 截取 example.gtf 第 9 列的内容
3. 在第2步的基础上截取分号分割的第1列
4. 在第3步的基础上排序、去重复并统计
5. 在第4步的基础上,将空格替换成制表符
补充小知识 :
清屏 :control L
查看历史(输入过的)命令 :history