前言,linux最通用的一些日常使用的命令,如果知道一个命令,而不清楚它的具体用法,可以请求help帮助,例如:mv --help 查看移动命令的帮助信息
1: find 查找命令 示例:
find /home -name "*java*" 说明:/home 是查找路径 -name 是按照名称查询 “*java*" 是通配符匹配查询
其他使用形式例如:
find . -name "*.c" 在当前目录及其子目录(用“.”表示)中查找任何扩展名为“c”的文件
2:mkdir 创建目录命令:示例:
mkdir java 说明:在当前目录下创建一个java目录
3:pwd 查看”当前工作目录“的完整路径 示例:
root@ubuntu:/usr# pwd 说明:查看usr目录所处目录的完整路径
4:ls -la 说明:查看目录或者文件的权限信息 示例:
root@ubuntu:/home/mk1990/Downloads# ls -la
5:mv 移动命令 示例:
root@ubuntu:/home/mk1990/Downloads# mv jdk-7u79-linux-x64.rpm /usr/java/
说明:将jdk-7u79-linux-x64.rpm 文件 移动到 /usr/java目录下
其他使用:
mv命令重命名文件 例如:mv A B;将目录A重命名为B ;
mv命令移动文件 例如 mv /a /b/c;将/a目录移动到/b下,并重命名为c
6:cp 复制命令 示例:
root@ubuntu:/usr/java# cp jdk-7u79-linux-x64.rpm /home/mk1990/Downloads/
说明:将jdk-7u79-linux-x64.rpm 复制到home/mk1990/Downloads目录下
7:clear 清屏 示例:
root@ubuntu:/usr/java# clear
说明:清空当前屏幕内容,显示到清屏命令所在目录下
8:rm 删除命令 示例:
root@ubuntu:/usr/java/test# rm -rf *
说明:删除test目录下的所有目录和文件。
-rf 说明:
-r 将目录及以下之档案亦逐一删除。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
9:文件操作实际测试一组命令:
步骤1)touch a.txt 在指定目录下创建一个a.txt文件夹 也可以使用vi命令 详述如下:
新建文件时用touch命令可以建立一个空文件,而vi命令则可以直接编辑文件的内容并保存
步骤2)vi a.txt 使用vi 命令 打开 a.txt文件
步骤3)在a.txt文件里添加内容,其中包括三种输入方式,a i o 分别表示在后面插入,直接插入,另起一行插入。
步骤4)进入编辑模式后 使用 backspace 和 空格 进行 左右移动和替换操作
步骤5)想要删除某一个字符 直接在 命令模式下 输入 x 即可删除相应字符
步骤6)想要删除整行内容直接在命令模式下输入 ndd 即可。
步骤7)在命令模式下 可以使用 上下左右键 进行光标移动,但是在输入模式下则不可。
步骤8)在命令模式下输入
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
gg : 跳转到文件头
Shift+g : 跳转到文件末尾
行数+gg : 跳转到指定行,例跳转到123行:123gg
步骤9):wq! 保存并退出, :q! 不保存退出
步骤10)搜索和替换操作
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
10:linux 权限 使用详述
查看文件或目录的权限使用 ls -la 或者 ls -lh 或者使用ls --help自行查看使用
每一个用户都有它自身的读、写和执行权限。第一套权限控制访问自己的文件权限,即所有者权限。
第二套权限控制用户组访问其中一个用户的文件的权限。
第三套权限控制其他所有用户访问一个用户的文件的权限,这三套权限赋予用户不同类型(即所有者、用户组和其他用户)的读、写及执行权限
第2~10个字符当中的每3个为一组,左边三个字符表示所有者权限,中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。这三个一组共9个字符,代表的意义如下:
r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w(Write,写入):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
举例说明如下:
-rwx------: 文件所有者对文件具有读取、写入和执行的权限。
-rwxr―r--: 文件所有者具有读、写与执行的权限,其他用户则具有读取的权限。
-rw-rw-r-x: 文件所有者与同组用户对文件具有读写的权限,而其他用户仅具有读取和执行的权限。
drwx--x--x: 目录所有者具有读写与进入目录的权限,其他用户近能进入该目录,却无法读取任何数据。
Drwx------: 除了目录所有者具有完整的权限之外,其他用户对该目录完全没有任何权限。
使用chmod和数字改变文件或目录的访问权限
文件和目录的权限表示,是用rwx这三个字符来代表所有者、用户组和其他用户的权限。有时候,字符似乎过于麻烦,因此还有另外一种方法是以数字来表示权限,而且仅需三个数字。
r: 对应数值4
w: 对应数值2
x:对应数值1
-:对应数值0
如下几个例子:
-rwx------:等于数字表示700。
-rwxr―r--:等于数字表示744。
-rw-rw-r-x:等于数字表示665。
drwx―x―x:等于数字表示711。
drwx------:等于数字表示700。
假如想一次修改某个目录下所有文件的权限,包括子目录中的文件权限也要修改,要使用参数-R表示启动递归处理
例如:
[root@localhost ~]# chmod 777 /home/user 注:仅把/home/user目录的权限设置为rwxrwxrwx
[root@localhost ~]# chmod -R 777 /home/user 注:表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx
使用命令chown改变目录或文件的所有权
文件与目录不仅可以改变权限,其所有权及所属用户组也能修改,和设置权限类似。
例如:
-rwxrwxrwx 1 root root 12172 8月 15 23:18 conkyrc.sample
可以看到conkyrc.sample文件的所属用户组为root,所有者为root。
执行下面命令,把conkyrc.sample文件的所有权转移到用户user:
[root@localhost ~]# chown user conkyrc.sample
查看:-rwxrwxrwx 1 user root 12172 8月 15 23:18 conkyrc.sample
要改变所属组,可使用下面命令:
[root@localhost ~]# chown :users conkyrc.sample
查看:-rwxrwxrwx 1 user users 12172 8月 15 23:18 conkyrc.sample
要修改目录的权限,使用-R参数就可以了,方法和前面一样
11: date 查看系统时间
12: more 查看文件里的内容,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。
more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。
more命令从前向后读取文件,因此在启动时就加载整个文件
13:less
命令格式:
less [参数] 文件
命令功能:
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件
14:重启和关闭系统
1)shutdown 关闭或者重启系统
例如1:立即关闭系统 shutdown -h 0
例如2:5秒后重启系统 shutdown -r 5
例如3:向所有已经登陆系统的用户发出警告信息: shutdown -k 0 'The system will shutdown after 30 minutes!'
2)init 改变运行级别
例如:重启系统: init 6 关闭系统 init 0
15:kill 用来终止指定的进程(terminate a process)的运行
例如:
杀掉进程: kill pid
强制杀掉: killall -9 processname
kill 的作用: send a signal to a process. eg: kill -9 发送的是SIG_KILL信号。。。 具体发送什么信号 可以通过 man kill 查看
16: passwd 更改用户密码
例如: root@ubuntu:/usr/java/test# passwd root
17:切换用户 su(会克隆当前的环境变量) or su –(不会克隆当前的环境变量)
例如: root@ubuntu:~# su - mk1990
18:hostname 查看主机名
19:history 查看历史命令 如果要重新执行已经执行的命令可以使用 “!命令编号"
20:df 查看文件系统 默认是以 kb 计算 可以使用 df - h (以GB查看) df - m (以MB查看)
21:alias和unalias 命令别名分别代表 添加命令别名和取消命令别名 例如 alias df='df -h' 取消:unalias df
22:echo 显示信息 可以在屏幕上显示信息例如:echo hello word! 屏幕直接显示hello word! 如果要查看一个变量的路径可以使用: echo $PATH 这个就是查看path变量值
23:export 输出变量 例如:export count=100 这种定义方式可以是在后续的子进程中能够生效
24:env 显示环境变量值 可以显示当前shell会话中已经定义的所有系统默认的和用户自定义的环境变量以及这些环境变量所对应的变量值
25:ps 查看进程,如果要以长列表的形式显示可以使用 ps -ef
26:whoami 和 who 查看用户 whoami用于查看当前会话的登陆用户,而who则用于查看当前已经登陆系统都有哪些用户
27:grep 过滤信息 例如 grep sam file1就是查看file1文件中出现sam的条数 如果反向不出现sam的其他信息条数 grep -v sam file1 如果查询多个信息可以使用 grep -E "sam|kim" file1
28:wc 统计命令 例如 wc helloword.txt 显示 1 2 3 helloword.txt 分别代表 行数、单词数、字节数、文件名
29:linux管道技术
1)linux系统支持把一个命令的输出结果作为另一个命令的输入,这就是管道技术。
2)管道技术使用“|”符号标识 语法如下:输出结果的命令 | 输入结果的命令
3)示例:ps -ef | grep bash 查看当前系统中正在运行的包涵有bash关键字的进程
30:linux解压文件命令:tar -zxvf filename
31:nohup 命令
用途:不挂断地运行命令。
语法:nohup Command [ Arg … ] [ & ]
描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示”and”的符号)到命令的尾部。
32:tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容。
一、tail命令语法
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
参数解释:
-f 该参数用于监视File文件增长。
-c Number 从 Number 字节位置读取指定文件
-n Number 从 Number 行位置读取指定文件。
-m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
-b Number 从 Number 表示的512字节块位置读取指定文件。
-k Number 从 Number 表示的1KB块位置读取指定文件。
File 指定操作的目标文件名称
上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部開始计算。
tail可运行文件一般在/usr/bin/以下。
二、tail命令使用方法演示例子
1、tail -f filename
说明:监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C。
2、tail -n 20 filename
说明:显示filename最后20行。
3、tail -r -n 10 filename
说明:逆序显示filename最后10行。