linux 基础学习 常用命令

1.cd ,cd ..,cd /

命令格式:cd <路径>or<特殊符号>

意义:cdchange directory 的缩写;

cd  : 返回主目录

cd .. : 返回上一级目录

cd /  : 返回根目录

cd - : 返回进入此目录之前所在的目录

2.ls,ls -l(说出各列含义),ls –a

 ls  只显示文件名或者文件目录

ls –a  列出目录下的所有文件,包括以 . 开头的文件 .”(表示当前目录)“..”(表示当前目录的父目录)

linux 基础学习 常用命令

  ls -l(这个参数是字母L的小写,不是数字1) 用来查看详细的文件资料

在某个目录下键入ls -l可能会显示如下信息:   

文件属性(占10个字符空间)  ,文件数 ,拥有者 ,所属的group ,文件小,建档日期 ,文件名

linux 基础学习 常用命令

这些显示内容的意义:  
    第一个栏位,表示文件的属性。Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。第一个小格是特殊表示格,表示目录或连结文件等等,

d表示目录,例如drwx------;

l表示链接文件,(类似与快捷键之类)如lrwxrwxrwx;

-则表示这是普通文件。

B 表示块设备文件

C 表示字符设别文件

S 套接字文件表示该文件为sock文件。与shell编程有关的文件。

P 表示管理文件,表示该文件为命令管道文件。与shell编程有关的文件。

 

其余剩下的格子就以每3格为一个单位。

因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):  rwx(Owner)r-x(Group)r-x(Other)  

使用者  自己可读,可写,可执行;

同一组的用户 可读,不可写,可执行;

其它用户 可读,不可写,可执行。

另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。 
    第二个栏位,表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。  
      第三个栏位,表示该文件或目录的拥有者。若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。  
      第四个栏位,表示所属的组(group)。每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。  
      第五栏位,表示文件大小。文件大小用byte来表示,而空目录一般都是1024byte,你当然可以用其它参数使文件显示的单位不同,如使用ls –k就是用kb莱显示一个文件的大小单位,不过一般我们还是以byte为主。  
      第六个栏位,表示创建日期。以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。  
      第七个栏位,表示文件名。我们可以用ls –a显示隐藏的文件名。

 

白色:表示普通文件

蓝色:表示目录

绿色:表示可执行文件

红色:表示压缩文件

浅蓝色:链接文件

红色闪烁:表示链接的文件有问题

黄色:表示设备文件

背景色黄色

SGID特殊权限文件

-r-xr-sr-x

背景色红色

SUID特殊权限文件

-rwsr-xr-x

背景色绿色

SBIT特殊权限文件

drwxrwxrwt

linux 基础学习 常用命令

3.pwd

pwdPrint Working Directory的缩写,其功能是显示当前所在工作目录的全路径。主要用在当不确定当前所在位置时,通过pwd来查看当前目录的绝对路径

 

4.ps -ef|grep java

查看当前进程

linux 基础学习 常用命令

其中各列的内容意思如下
UID    //用户ID、但输出的是用户名 
PID    //进程的ID 
PPID    //父进程ID 
C      //进程占用CPU的百分比 
STIME  //进程启动到现在的时间 
TTY    //该进程在那个终端上运行,若与终端无关,则显示 ? 若为pts/0等,则表示由网络连接主机进程。 
CMD    //命令的名称和参数 

5.kill -9 pid

命令格式:kill PID码

意义:结束当前进程

先通过输入命令 ps au查看进程,找到需要终止进程的PID再通过kill PID即可,如我这里想要终止的进程是vim test.py,查到的PID是3163,我们可以输入kill 3163结束这个程序,如果结束不了,可以通过kill -9 PID码强制结束,即kii -9 3163

6.tail -f -n20 文件名

命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容

-f 循环读取 

-n<行数> 显示行数

7.cat 文件名

cat主要有三大功能:
1.一次显示整个文件。
cat   filename
2.
从键盘创建一个文件。
cat  >  filename

linux 基础学习 常用命令
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
cat   file1   file2  > file
cat
具体命令格式为 : cat [-AbeEnstTuv] [--help] [--version] fileName
说明:把档案串连接后传到基本输出(屏幕或加 > fileName 到另一个档案)
参数:

8.mkdir命令

意义:mkdir是make directory 的缩写。用于创建文件夹。创建文件夹前需保证当前用户对当前路径有修改的权限。

命令格式: mkdir 文件夹

示例:

mkdir /data/path 在/data路径下创建path文件夹。

mkdir -p a/b/c 参数 -p用于创建多级文件夹,这句命令表示在当前路径下创建文件夹a, 而a文件夹包含子文件夹b,b文件夹下又包含子文件夹c。

9.rm命令

意义:rm是remove 的缩写。用于删除文件或文件夹,常用参数-r -f,-r表示删除目录,也可以用于删除文件,-f表示强制删除,不需要确认。同样的,删除文件前需保证当前用户对当前路径有修改的权限。

命令格式: rm <文件> 或 rm -r <文件夹>

1.rm -rf * 删除当前目录下的所有文件,这个命令很危险,应避免使用。

所删除的文件,一般都不能恢复!

2.rm -f 其中的,f参数 (f --force ) 忽略不存在的文件,不显示任何信息

不会提示确认信息。

3.rm 命令删除一个目录中的一个或者多个文件或者目录,只用rm命令不会

删除目录,通常文件通常可以恢。

10.cp命令

意义:cp是copy 的缩写。用于复制文件或文件夹。

命令格式: cp <文件><目标文件>或者cp -r<文件夹><目标文件夹>

-a :将文件的特性一起复制  

-p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份  

-i :若目标文件已经存在时,在覆盖时会先询问操作的进行  

-r :递归持续复制,用于目录的复制行为  

-u :目标文件与源文件有差异时才会复制  

示例:

cp /data/logs /data/local/tmp/logs 复制/data路径下的logs到/data/local/tmp路径下。

cp 1.sh /sdcard/ 复制当前路径下的1.sh/sdcard下。

 

11.vim 文件名,在vim中修改文本,保存退出,不保存退出等

安装: yum –y install vim

打开

vim filename

打开或新建一个文件,并将光标置于第一行的首部

vim -r filename

恢复上次 vim 打开时崩溃的文件

vim -R filename

把指定的文件以只读方式放入 Vim 编辑器中

vim + filename

打开文件,并将光标置于最后一行的首部

vi +n filename

打开文件,并将光标置于第 n 行的首部

vi +/pattern filename

打幵文件,并将光标置于第一个与 pattern 匹配的位置

vi -c command filename

在对文件进行编辑前,先执行指定的命令

修改:

i

在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动

I

在光标所在行的行首插入随后输入的文本,行首是该行的第一个非空白字符,相当于光标移动到行首执行 i 命令

o

在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本

O(大写)

在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本

a

在当前光标所在位置之后插入随后输入的文本

A

在光标所在行的行尾插入随后输入的文本,相当于光标移动到行尾再执行 a 命令

查找

/abc

从光标所在位置向前查找字符串 abc

/^abc

查找以 abc 为行首的行

删除

x

删除光标所在位置的字符

dd

删除光标所在行

ndd

删除当前行(包括此行)后 n 行文本

dG

删除光标所在行一直到文件末尾的所有内容

D

删除光标位置到行尾的内容

:a1,a2d

函数从 a1 行到 a2 行的文本内容

保存

:wq

保存并退出 Vim 编辑器

:wq!

保存并强制退出 Vim 编辑器

:q

不保存就退出 Vim 编辑器

:q!

不保存,且强制退出 Vim 编辑器

:w

保存但是不退出 Vim 编辑器

:w!

强制保存文本

:w filename

另存到 filename 文件

x!

保存文本,并退出 Vim 编辑器,更通用的一个 vim 命令

:e!

放弃所有修改,从上次保存文件开始再编辑

ZZ

直接退出 Vim 编辑器

12、chmod [-R] 777 文件名/文件夹/通配符,说出777的含义

chmod命令是linux上用于改变权限的命令,-R 是递归遍历子目录,因为你要操作的文件使用的*通配符。777,第一个7代表文件所属者的权限,第二个7代表文件所属者所在组的权限,第三个7代表其它用 户的权限,7=4+2+1,在linux中权限是可以通过数字来描述的。具体表示如下:

4,执行时设置用户ID,用于授权给基于文件属主的进程,而不是给创建此进程的用户。

2,执行时设置用户组ID,用于授权给基于文件所在组的进程,而不是基于创建此进程的用户。

1,设置粘着位。

chmod:在linux系统中它用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。

参数-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更) 。

777,第一个7代表文件所属者的权限,第二个7代表文件所属者所在组的权限,第三个7代表其它用 户的权限,7=4+2+1,在linux中权限是可以通过数字来描述的。具体表示如下:

4,执行时设置用户ID,用于授权给基于文件属主的进程,而不是给创建此进程的用户。

2,执行时设置用户组ID,用于授权给基于文件所在组的进程,而不是基于创建此进程的用户。

1,设置粘着位。

 

777:分别对应文件实际拥有者,文件实际拥有者所在的组,其它用户的权限,数字权限是基于八进制数字系统而创建的,读权限(read,r)的值是4,写权限(write,w)的值是2,执行权限(execute,x)的值是1,没有授权的值是0。因此777就是rwxrwxrwx

*:通配符,指当前目录下的所有文件及目录

12.netstat -tunlp | grep 端口号

netstat -tnl | grep 443 (查看443端口是否被占用),如果有当前是root用户

netstat -pnl | grep 443 (还可显示出占用本机443端口的进程PID)。

linux 基础学习 常用命令

 

13.ifconfig或ip a

Ifconfig 没有任何参数选项,显示当前所有网络状态(以太网 ;本地回送)

linux 基础学习 常用命令

第一行:连接类型:以太网(以太网)HWaddr(硬件mac地址)

第二行:网卡的IP地址,子网,长度

第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持允许)MTU:1500(最大传输单元):1500字节

第四,五行:接收,发送数据包情况统计

第七行:接收,发送数据字节数统计信息。

 

14.tar -zxvf a.tar.gz 解压()

tar -xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2

-------------------------------------

tar -xZvf file.tar.Z   //解压tar.Z

tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

 tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar -cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

 

15. 安装   yum -y install  下载: wget

yum -y install wget

yum –y install vim

执行命令yum -y list java*查看可安装java版本

yum -y list java*

16.ps命令

用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。

 

命令格式

ps命令基本格式为:

ps [options]

常用参数

-A 显示所有进程(同-e)

-a 显示当前终端的所有进程

-u 显示进程的用户信息

-o 以用户自定义形式显示进程信息

-f 显示程序间的关系

可使用命令man ps查看,

实例

ps au                   查看进程

ps –A          显示所有进程信息

ps–ef           显示所有进程基本信息

ps -ef|grep java 显示关于java  查看tomcat进程基本信息

ps –aux         查看进程占用内存,cpu利用率等信息

ps –elf         显示线程相关信息

ps –o                 可以指定要显示的列查 看指定进程指定信息 只需要在最后指定–pid参数即可

字段含义
ps命令输出各字段的含义,这样我们才能更好地理解所展示的信息。

常见字段的基本含义如下:

USER         进程所有者的用户名

PID                     进程号

START    进程**时间

%CPU    进程自最近一次刷新以来所占用的CPU时间和总时间的百分比

%MEM   进程使用内存的百分比

VSZ      进程使用的虚拟内存大小,以K为单位

RSS      驻留空间的大小。显示当前常驻内存的程序的K字节数。

TTY      进程相关的终端

STAT     进程状态,包括下面的状态:

D       不可中断 Uninterruptible sleep (usually IO)

R        正在运行,或在队列中的进程

S         处于休眠状态

T          停止或被追踪

Z           僵尸进程

W         进入内存交换(从内核2.6开始无效)

X           死掉的进程

<                      高优先级

N             低优先级

L              有些页被锁进内存

s               包含子进程

\+             位于后台的进程组;

l        多线程,克隆线程

TIME    进程使用的总CPU时间

COMMAND 被执行的命令行

NI       进程的优先级值,较小的数字意味着占用较少的CPU时间

PRI      进程优先级。

PPID      父进程ID

WCHAN   进程等待的内核事件名