Linux常用的命令

Posted 文思飞扬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用的命令相关的知识,希望对你有一定的参考价值。

mac  ifconfig 查看ip地址

Linux是区分大小写的

1. ls 命令 等同 dir命令, 会列出文件夹里的所有内容

   ls -l 显示的长格式的内容

   ls -a 显示全部内容,包括隐藏的文件,隐藏文件前面都会有一个.

 ls -al 可以合并写,结果就是两个的结合

 ls -d 这个选项是针对目录的,可以查看指定目录的属性,一般和 -l  一起用,

2. cd 切换目录的命令,cd Desktop  去到Destop目录,cd ..  返回上级目录

3. mkdir 创建目录,不能在同一文件夹下重复创建

 mkdir -p tmp/test,如果目录不存在则强制创建目录,这个是在本目录下创建,如果写成mkdir -p /tmp/test如果没有权限的话会报错,应该是不能这么写,只能操作本目录下的东西,不能加/ 

 mkdir -m 用于指定要创建目录的权限,一般用chmod来设置,下面会有讲解

 touch 创建文件

 rmdir 删除空目录,也有-p参数,但也是删除一连串的空目录,但是如果目录里面有目录或是文件则会报错

4. cp 复制文件, cp -r(-R) 复制目录,没有大小写之分

 cp -i 复制文件时如果遇到一个已存在的文件,会询问是否覆盖

 这个目录如果有重复的,使用 -ri(ir)不会有询问,只有文件的重复才会

需要满足条件,首先复制的文件要是当前目录下的文件,否则无法复制,其次复制到的目录要是当前目录下的目录,否则无法复制。

cp 文件名 目录/复制后的名字(可以修改)

cp -R 文件目录名 目录/复制后的名字(可以修改)

5. rm 删除文件,rm -r 删除目录,可以删除非空目录,

 rm -f 表示强制删除目录

 rm -i 删除时会询问是否删除文件或文件夹

可以组合使用

6. pwd 获取全部路径

7. vi

 进入到文件内部

 vi index.js 进入到文件内部,按i输入内容,按esc,然后输入:wq退出文件。

 输入多了怎么删除呢, 怎么上下选择

   命令集锦: http://man.linuxde.net/vi

 i/a

   esc

   dd      //在非编辑状态连按两下

   /fmt   //搜索,按n是查找下一个

   :q!     //强制退出

   :wq    //保存并退出

8. cat index.js 查看文件内容

 -n 把行号也显示在屏幕上

 -A 这个是区分大小写的,表示显示所有的内容,包括特殊字符。不知道为什么会有一个$符在每行的最后。

 tac 是cat的反序写法,也是把文件的内容显示在屏幕上,只不过是倒序显示,现显示最后一行。

 more 也用于查看文件的内容,后面直接跟文件名,当文件内容太多,一屏显示不下时使用more,按空格(或Ctrl+F)向下翻屏,按Ctrl+D向上翻屏,看完所有内容会自己退出,如果想提前退出按q健即可。

 less 也是用于查看文件,后面直接跟文件名,但是less比more的功能要多一些,按空格健可以翻页,按j健可以向下移动,按一下移动一行,按k健可以向上移动。

 在使用more和less查看某个文件时,可以按下/健,并输入一个字符串,然后回车,这样就可以查找这个字符串了,如果查找多个该字符串,可以按n健显示下一个,另外,也可以用?代替/来搜索字符串,它们的区别是,/是当前行向下搜索,?是当前行向上搜索。

 head 用于显示文件的前十行,后面直接跟文件名,如果加-n选项的话,则显示文件前几行,可以写-n2,或-2。

 tail 用于显示文件的最后十行,后面直接跟文件名,如果加-n的话,则显示文件的最后几行,可以写-n2,或-2。

 -f 选项也是常用的,可以动态的显示文件的最后十行,如果文件在不断的增加,使用-f会非常直观和方便,用来查看线上的log。

(还是那句话版本不同实际操作的情况不同,但是都会有这些命令)

9. mv 移动文件夹(文件),移动后原目录 (文件)就不存在了,这个命令可以操作文件夹和文件

   mv 文件名 目标路径(/修改后的名字)

这个会分两种情况第一种,目标文件是目录(即移动的源是目录),如果该目录不存在,则会把源目录重命名为目标目录名,如果该目录存在,则把源移动到目录中。

第二种,目标文件是文件(即移动的源是文件),如果该文件不存在,则会把源文件重命名为指定的目标文件,如果该文件存在,则会询问是否覆盖(有些版本的Linux会询问,因为它们默认是mv -i,而有些不会,需要自己加上-i)。

10. 给文件内添加内容可以使用echo ‘aaaa‘ > index.js,这个是给第一行添加,如果继续是> 的话会删除之前的所有内容,重新从第一行添加,>> 这个是追加的意思,会在文件内追加,而不会删除原来的内容

11. Linux文件的权限操作,groupadd,useradd,添加组和添加用户,怎么在组中添加用户呢?后面补充

文件和目录的权限有三种,r读,w写,x可执行,对于一个目录来讲,打开这个目录就是执行这个目录,所以一个目录必须要有x权限才能打开并查看目录内的内容。

我们新建一个目录权限列表是

drwxr-xr-x, d表示目录,后面每三位一组,分别表示所有者、所有组、其他用户对该目录的权限。设置权限也是三个一组设置,rwx对应的数值分别是 4,2,1,新建的目录权限是 755,新建文件的权限是644,即-rw-r--r--,第一位-表示文件。

ubuntu修改root登录的方法:因为如果不是root登录,则无法修改权限

http://blog.csdn.net/sunxiaoju/article/details/51993091

修改组的权限 chgrp [-R](只适用于目录,级连修改文件夹内部的文件,因为文件写了也没用) [组名] [文件名] (change group),这个命令的作用不大,用的少

修改所有者  chown [-R](同上)[账户名] [文件名](change owner) 或者 chown [-R]  [账户名:组名] [文件名]这个命令是将文件修改为所有者是账户名,所有组是组名。

chown -R ww:lww test.js  

ls -l出来的结果是

ubuntu修改root登录的方法:因为如果不是root登录,则无法修改权限

-rw-r--r-- 1 ww lww 0 2月 3 22:59 test.js

文件-,权限九位,位数,该文件的所有者,该文件的所有组,该文件的大小,2月 3 22:59表示该文件最后一次被修改的时间,文件名

其中ww不一定是lww组里的用户

/etc/passwd   和   /etc/shadow    /etc/group   

前两个目录一个是用户的基本信息,一个是保存用户的密码,第三个是组信息

groupadd 添加组,组会有一个gid,即groupid,自定义的组从1000开始,

groupadd test1

查看组使用  tail -1 /etc/group

会包含组的gid信息

groupdel test1   删除组,如果组中有用户了,就不能删除改组,需要将用户删除后才能删除组

useradd 添加用户,用户也会有uid,自定的用户id从1000开始,这个命令有很多参数,但是不同的系统参数会稍有差异,需要查看帮助命令,一般是

useradd [-u uid] [-g gid] [-d 自定义用户的家目录] | [-M表示不创建家目录] [-s 自定义shall]

useradd -u 1000 -g 1000 -d /home/test1 -s /sbin/bash test1

这样test1用户就建在test1组中,home下面会新建一个test1文件夹,不写的有的系统会自动创建,有的则不会,根据实际情况定

userdel -r test1   -r是连同家目录一起删掉,不加-r就不会删除家目录

chfn  更改用户的finger,即用户中的备注信息

grep ‘test1‘  /etc/passwd   grep命令是在/etc/passwd文件中搜索关键字 ‘test1’ 

passwd test1  给用户设置密码,如果不写后面的用户,则是给当前用户设置密码,需要注意的是,只有root用户才可以修改其他账户的信息,普通用户只能修改自己的密码

用户身份切换命令

login as: test1    会切换到test1用户,但是该命令不能切换到root账户

whoami   查看当前用户

root用户是#,其他用户是$

su 命令也是切换用户,并且可以和root账户来回切换

su - root   加-切换时,当前目录会是当前账户的家目录,如果不加-,则目录不变。由root用户切换到普通用户时是不需要输入密码的

 

12. 查找文件

find  / -name filename

13. systemctl status httpd    //查看apache的启动状态

ubantu 的命令不同 是  systemctl status apache2 

ssh [email protected]   //登录远程服务器

 

14. ip, router, ifconfig

 ip addr

/etc/sysconfig/network-scripts   //这个目录下是关于网络的配置

 

15. wget  curl 

 

16

 

17.

18. 查看进程列表使用

top 

 退出按q

ps命令是静态的,也是查看进程列表

ps aux 

查找某个进程

ps aux | grep 进程名字

kill (-9) pid

pkill 批量删除

w命令,查看服务器是否被其他人使用 

 

 

 

 

 

 

 

 

以上是关于Linux常用的命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux文本操作常用命令

Linux常用命令都有哪些?

linux常用命令多少个

Linux 常用命令(要求全而精)

Linux 常用命令(要求全而精)

Linux常用命令