-
cd命令
cd /root/Docements # 切换到目录/root/Docements cd ./path # 切换到当前目录下的path目录中,“.”表示当前目录 cd ../path # 切换到上层目录中的path目录中,“..”表示上一层目录
-
ls命令
-l :列出长数据串,包含文件的属性与权限数据等 -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用) -d :仅列出目录本身,而不是列出目录的文件数据 -h :将文件容量以较易读的方式(GB,kB等)列出来 -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来
ls -l #以长数据串的形式列出当前目录下的数据文件和目录 ls -lR #以长数据串的形式列出当前目录下的所有文件
-
grep命令
grep [-acinv] [--color=auto] '查找字符串' filename
-a :将binary文件以text文件的方式查找数据 -c :计算找到‘查找字符串’的次数 -i :忽略大小写的区别,即把大小写视为相同 -v :反向选择,即显示出没有‘查找字符串’内容的那一行 # 例如: # 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色 grep --color=auto 'MANPATH' /etc/man.config # 把ls -l的输出中包含字母file(不区分大小写)的内容输出 ls -l | grep -i file
-
find命令
find [PATH] [option] [action] # 与时间有关的参数: -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件; -mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名; -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名; -newer file : 列出比file还要新的文件名 # 例如: find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件 # 与用户或用户组名有关的参数: -user name : 列出文件所有者为name的文件 -group name : 列出文件所属用户组为name的文件 -uid n : 列出文件所有者为用户ID为n的文件 -gid n : 列出文件所属用户组为用户组ID为n的文件 # 例如: find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件 # 与文件权限及名称有关的参数: -name filename :找出文件名为filename的文件 -size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件 -tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、 目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p); -perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755; -perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示 -perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示 # 例如: find / -name passwd # 查找文件名为passwd的文件 find . -perm 0755 # 查找当前目录中文件权限的0755的文件 find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte
-
cp命令
-a :将文件的特性一起复制 -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份 -i :若目标文件已经存在时,在覆盖时会先询问操作的进行 -r :递归持续复制,用于目录的复制行为 -u :目标文件与源文件有差异时才会复制
cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2 cp file1 file2 file3 dir #把文件file1、file2、file3复制到目录dir中
-f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖 -i :若目标文件已经存在,就会询问是否覆盖 -u :若目标文件已经存在,且比目标文件新,才会更新
mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中 mv file1 file2 # 把文件file1重命名为file2
-
rm命令
-f :就是force的意思,忽略不存在的文件,不会出现警告消息 -i :互动模式,在删除前会询问用户是否操作 -r :递归删除,最常用于目录删除,它是一个非常危险的参数
rm -i file # 删除文件file,在删除之前会询问是否进行该操作 rm -fr dir # 强制删除目录dir中的所有文件
-
ps命令
-A :所有的进程均显示出来 -a :不与terminal有关的所有进程 -u :有效用户的相关进程 -x :一般与a参数一起使用,可列出较完整的信息 -l :较长,较详细地将PID的信息列出
ps aux # 查看系统所有的进程数据 ps ax # 查看不与terminal有关的所有进程 ps -lA # 查看系统所有的进程数据 ps axjf # 查看连同一部分进程树状态
-
kill命令
kill -signal PID
1:SIGHUP,启动被终止的进程 2:SIGINT,相当于输入ctrl+c,中断一个程序的进行 9:SIGKILL,强制中断一个进程的进行 15:SIGTERM,以正常的结束进程方式来终止进程 17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
# 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程 kill -SIGTERM %1 # 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得 kill -SIGHUP PID
-
killall命令
killall [-iIe] [command name]
-i :交互式的意思,若需要删除时,会询问用户 -e :表示后面接的command name要一致,但command name不能超过15个字符 -I :命令名称忽略大小写 # 例如: killall -SIGHUP syslogd # 重新启动syslogd
-
file命令
file filename #例如: file ./test
-
tar命令
-c :新建打包文件 -t :查看打包文件的内容含有哪些文件名 -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中 -j :通过bzip2的支持进行压缩/解压缩 -z :通过gzip的支持进行压缩/解压缩 -v :在压缩/解压缩过程中,将正在处理的文件名显示出来 -f filename :filename为要处理的文件 -C dir :指定压缩/解压缩的目录dir
压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称 查询:tar -jtv -f filename.tar.bz2 解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
-
cat命令
cat text | less # 查看text文件中的内容 # 注:这条命令也可以使用less text来代替
-
chgrp命令
chgrp [-R] dirname/filename -R :进行递归的持续对所有文件和子目录更改 # 例如: chgrp users -R ./dir # 递归地把dir目录下中的所有文件和子目录下所有文件的用户组修改为users
-
chown命令
-
chmod命令
chmod [-R] xyz 文件或目录 -R:进行递归的持续更改,即连同子目录下的所有文件都会更改
# 例如: chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x chmod g+w file # 向file的文件权限中加入用户组可写权限
-
vim命令
-
gcc命令
-o :output之意,用于指定生成一个可执行文件的文件名 -c :用于把源文件生成目标文件(.o),并阻止编译器创建一个完整的程序 -I :增加编译时搜索头文件的路径 -L :增加编译时搜索静态连接库的路径 -S :把源文件生成汇编代码文件 -lm:表示标准库的目录中名为libm.a的函数库 -lpthread :连接NPTL实现的线程库 -std= :用于指定把使用的C语言的版本 # 例如: # 把源文件test.c按照c99标准编译成可执行程序test gcc -o test test.c -lm -std=c99 #把源文件test.c转换为相应的汇编程序源文件test.s gcc -S test.c
-
time命令
time ./process time ps aux
-
lsblk命令
“lsblk“就是列出块设备。除了RAM外,以标准的树状输出格式,整齐地显示块设备。
“lsblk -l”命令以列表格式显示块设备(而不是树状格式)。
-
md5sum命令
“md5sum”就是计算和检验MD5信息签名。md5 checksum(通常叫做哈希)使用匹配或者验证文件的文件的完整性,因为文件可能因为传输错误,磁盘错误或者无恶意的干扰等原因而发生改变。
-
uname命令
“uname“命令就是Unix Name的简写。显示机器名,操作系统和内核的详细信息。
root@raspberrypi:/# uname -a Linux raspberrypi 3.6.11+ #528 PREEMPT Tue Aug 20 00:25:53 BST 2013 armv6l GNU/Linux
-
history命令
“history”命令就是历史记录。它显示了在终端中所执行过的所有命令的历史。
注意:按住“CTRL + R”就可以搜索已经执行过的命令,它可以在你写命令时自动补全。
-
sudo命令
“sudo”(super user do)命令允许授权用户执行超级用户或者其它用户的命令。通过在sudoers列表的安全策略来指定。
-
mkdir命令
“mkdir”(Make directory)命令在命名路径下创建新的目录。然而如果目录已经存在了,那么它就会返回一个错误信息”不能创建文件夹,文件夹已经存在了”(“cannot create folder, folder already exists”)
root@raspberrypi:/opt/labpark# mkdir raspbox
注意:目录只能在用户拥有写权限的目录下才能创建。mkdir:不能创建目录`tecmint`,因为文件已经存在了。(上面的输出中不要被文件迷惑了,你应该记住我开头所说的-在linux中,文件,文件夹,驱动,命令,脚本都视为文件)
-
touch 命令
“touch”命令代表了将文件的访问和修改时间更新为当前时间。touch命令只会在文件不存在的时候才会创建它。如果文件已经存在了,它会更新时间戳,但是并不会改变文件的内容。
root@raspberrypi:/opt/labpark# touch rasp.txt
注意:touch 可以用来在用户拥有写权限的目录下创建不存在的文件。
-
apt命令
Debian系列以“apt”命令为基础,“apt”代表了Advanced Package Tool。APT是一个为Debian系列系统(Ubuntu,Kubuntu等等)开发的高级包管理器,在Gnu/Linux系统上,它会为包自动地,智能地搜索,安装,升级以及解决依赖。
- pwd 命令
“pwd”(print working directory),在终端中显示当前工作目录的全路径。
root@raspberrypi:/opt/labpark# pwd /opt/labpark
-
命令: Find
搜索指定目录下的文件,从开始于父目录,然后搜索子目录。
root@raspberrypi:/opt/labpark# find book* book_backup.txt book.txt
root@raspberrypi:/opt/labpark# find -name *.c ./hello.c
root@raspberrypi:/opt/labpark# find -iname FACE* ./facebook.txt
注意: `-name‘选项是搜索大小写敏感。可以使用`-iname‘选项,这样在搜索中可以忽略大小写。(*是通配符,可以搜索所有的文件;‘.sh‘你可以使用文件名或者文件名的一部分来制定输出结果)
-
命令: grep
‘grep‘命令搜索指定文件中包含给定字符串或者单词的行。举例搜索‘/etc/passwd‘文件中的‘pi’
root@raspberrypi:/opt/labpark# grep pi /etc/passwd pi:x:1000:1000:,,,:/opt/wwwroot:/bin/bash
使用’-i’选项将忽略大小写。
root@raspberrypi:/opt/labpark# grep -i 'PI' /etc/passwd pi:x:1000:1000:,,,:/opt/wwwroot:/bin/bash |
使用’-r’选项递归搜索所有自目录下包含字符串 “localhost“.的行。
root@raspberrypi:/opt/labpark# grep -r "localhost" /etc/php5/ /etc/php5/cgi/php.ini:SMTP = localhost /etc/php5/cli/php.ini:SMTP = localhost /etc/php5/fpm/php.ini:SMTP = localhost
注意:您还可以使用以下选项:
- -w 搜索单词 (egrep -w ‘word1|word2‘ /path/to/file).
- -c 用于统计满足要求的行 (i.e., total number of times the pattern matched) (grep -c ‘word‘ /path/to/file).
- –color 彩色输出 (grep –color server /etc/passwd).
-
命令: man
‘man‘是系统帮助页。Man提供命令所有选项及用法的在线文档。几乎所有的命令都有它们的帮助页
-
命令: ps
ps命令给出正在运行的某个进程的状态,每个进程有特定的id成为PID。
-
命令: whereis
whereis的作用是用来定位命令的二进制文件\资源\或者帮助页.举例来说,获得ls和kill命令的二进制文件/资源以及帮助页
-
命令: service
‘service‘命令控制服务的启动、停止和重启,它让你能够不重启整个系统就可以让配置生效以开启、停止或者重启某个服务。
-
命令: alias
alias是一个系统自建的shell命令,允许你为名字比较长的或者经常使用的命令指定别名。
我经常用‘ls -l‘命令,它有五个字符(包括空格)。于是我为它创建了一个别名‘l’。
-
命令: df
报告系统的磁盘使用情况。在跟踪磁盘使用情况方面对于普通用户和系统管理员都很有用。 ‘df‘ 通过检查目录大小工作,但这一数值仅当文件关闭时才得到更新。
-
命令: du
估计文件的空间占用。 逐层统计文件(例如以递归方式)并输出摘要。
注意: ‘df‘ 只显示文件系统的使用统计,但‘du‘统计目录内容。
-
命令: passwd
这是一个很重要的命令,在终端中用来改变自己密码很有用。显然的,因为安全的原因,你需要知道当前的密码。
root@raspberrypi:/opt/wwwroot# passwd Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
-
命令: lpr
这个命令用来在命令行上将指定的文件在指定的打印机上打印。
root@raspberry:~# lpr -P deskjet-4620-series 1-final.pdf
注意: “lpq“命令让你查看打印机的状态(是开启状态还是关闭状态)和等待打印中的工作(文件)的状态。
-
命令: cmp
比较两个任意类型的文件并将结果输出至标准输出。如果两个文件相同, ‘cmp‘默认返回0;如果不同,将显示不同的字节数和第一处不同的位置。
-
命令: wget
Wget是用于非交互式(例如后台)下载文件的免费工具.支持HTTP, HTTPS, FTP协议和 HTTP 代理。
-
命令: mount
mount 是一个很重要的命令,用来挂载不能自动挂载的文件系统。你需要root权限挂载设备。
在插入你的文件系统后,首先运行”lsblk“命令,识别出你的设备,然后把分配的设备名记下来。
-
命令: ifconfig
ifconfig用来配置常驻内核的网络接口信息。在系统启动必要时用来设置网络适配器的信息。之后,它通常是只需要在调试时或当系统需要调整时使用。
-
命令: netstat
netstat命令显示各种网络相关的信息,如网络连接,路由表,接口统计,伪装连接,组播成员身份等….
-
命令: uptime
你连接到你的 Linux 服务器时发现一些不寻常或恶意的东西,你会做什么?猜测……不,绝不!你可以运行uptime来验证当服务器无人值守式到底发生了什么事情。
root@raspberrypi:~# uptime 04:09:59 up 7 min, 1 user, load average: 0.01, 0.31, 0.24
-
命令:w
是否觉得命令’w’很滑稽?但是事实上不是的。它是一个命令,尽管只有一个字符长!命令”w“是uptime和who命令,以前后的顺序组合在一起。
-
命令: top
显示CPU进程信息。这个命令自动刷新,默认是持续显示CPU进程信息,除非使用了中断指令(Ctrl+c)。
-
命令: mkfs.ext4
这个命令在指定的设备上创建一个新的ext4文件系统,如果这个命令后面跟的是个错误的设备,那么整个设备就会被擦除和格式化,所以建议不要运行这个命令,除非你清楚自己正在干什么。
Mkfs.ext4 /dev/sda1 (sda1 block will be formatted) mkfs.ext4 /dev/sdb1 (sdb1 block will be formatted)
-
lsof -i:80 找出80端口
-
tail -f filename 监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C。
linux下vi的复制,黏贴,删除,撤销,跳转等命令
一,模式
vi编辑器有3种模式:命令模式、输入模式、末行模式。掌握这三种模式十分重要:
命令模式:vi启动后默认进入的是命令模式,从这个模式使用命令可以切换到另外两种模式,同时无论在任何模式下只要按一下[Esc]键都可以返回命令模式。
输入模式:在命令模式中输入字幕“i”就可以进入vi的输入模式编辑文件。在这个模式中我们可以编辑、修改、输入等编辑工作,在编辑器最后一行显示一个“–INSERT–”标志着vi进入了输入模式。当我们完成修改输入等操作的时候我们需要保存文件,这时我们需要先返回命令模式,在进入末行模式保存。
末行模式:在命令模式输入“:”即可进入该模式,在末行模式中有好多好用的命令。
二,复制
a,复制整行
命令模式下,光标位于要复制的当前行,输入 yy
b,复制一个单词
命令模式下,光标位于要复制的当前单词的第一个字母,输入 yw
三,黏贴
命令模式下,输入 p
四,删除
a,删除整行
命令模式下,光标位于要删除的所在行,输入 dd
b,删除一个单词
命令模式下,光标位于要删除的单词的第一个字母,输入 dw
五,撤销
命令模式下,输入 u
六,跳转
命令模式下,输入 要跳转的行数,然后再输入 gg
如:要跳转到当前文件的第150行,输入 150gg