Linux常用命令

2018-11-29  本文已影响0人  皮皮鱼吖

文件夹之间切换:

ls 显示当前目录下的所有文件及文件夹

-l              列出文件详细信息l(list)

-a              列出当前目录下所有文件及目录,包括隐藏的a(all) 

cd  /user 打开user文件夹

  如果不知道要打开的文件夹全称或名过长,可以按tab键盘自动补齐,如:cd  /u + table键,系统自动帮我们补齐成 /user

cd ..    (后面空格加两点)返回上一级目录

cd /                  回到根目录

ll                      换行方式输出当前目录下的所有文件及文件夹

文件的操作:

创建:

mkdir          创建文件夹

-p          创建目录,若无父目录,则创建p(parent)

touch            创建空文件

echo            创建带有内容的文件

ln                  创建链接文件

编辑:

vi          打开文件

cat        查看文件内容

c          按键盘上C键从只读状态切换为编辑状态

Esc      从编辑状态切换为只读状态

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

命令模式下:

:q      是退出(文件没发生更改时)

:q!      强制退出,不保存退出(文件发生改变时)

:wq    保存并退出

:set number 显示行号

:set nonumber  隐藏行号

/apache    在文档中查找apache 按n跳到下一个,shift+n上一个

ypp    复制光标所在行,并粘贴

h(左移一个字符)、j(下一行)、k(上一行)、l(右移一个字符)

复制:

cp test.txt  test2.txt  把test.txt文件当前文件夹下复制出个test2.txt

cp test.txt  /hzh/test  将test.txt 复制到/hzh/test  目录下

删除:

rm  aa.txt  删除aa.txt文件

rm  -r  bb  删除bb目录(包括目录下的所有文件)

rm  -f        强制删除

rmdir        删除空目录

移动:

mv dd.txt ..  将dd.txt文件移动上一级目录(注意尾部的两个点)

mv bb.txt  /hzh/test/  将bb.txt文件移动到hzh/test/目录下

改名:

mv  dd.txt  dd2.txt  将dd.txt改名为dd2.txt

查找:

locate  aa.txt  查整个系统中的aa.txt文件,locate\slocate命令 后面跟文件或文件夹。不过在执行这个命令之前要先更新数据库,所以选执行 updatedb 命令。

find                  在文件系统中搜索某文件

grep                在文本文件中查找某个字符串

显示:

tree          树形结构显示目录,需要安装tree包

pwd          显示当前目录

more、less    分页显示文本文件内容

head、tail      显示文件头、尾内容

ctrl+alt+F1      命令行全屏模式

统计:

wc    统计文本中行数、字数、字符数

查看系统信息命令:

df -lh  查看磁盘信息

stat    显示指定文件的详细信息,比ls更详细

lsb_release -a  查看系统所有版本信息

who  显示在线登陆用户

whoami  显示当前操作用户

hostname  显示主机名

uname    显示系统信息

top  动态显示当前耗费资源最多进程信息

ps  显示瞬间进程状态  ps -aux

du  查看目录大小 du -h /home带有单元显示目录信息

df    查看磁盘大小 df -h 带有单元显示磁盘信息

ifconfig  查看网络情况

ping      测试网络连通

netstat  显示网络状态信息

man      类似于help  如:man ls

clear      清屏

alias      对命令重命名 如:alias showmeit="ps -aux",另外解除使用unaliax showmeit

free  查看内存信息

                    total        used            free    shared    buffers      cached

Mem:    1034536    294568    739968              0      15636      174944

-/+ buffers/cache:    103988    930548

Swap:    1052248              0    1052248

下面是对这些数值的解释:

  total:总计物理内存的大小。

  used:已使用多大。

  free:可用有多少。

  Shared:多个进程共享的内存总额。

  Buffers/cached:磁盘缓存的大小。

  第三行(-/+ buffers/cached):

  used:已使用多大。

  free:可用有多少。

  第四行就不多解释了。

ps 查看当前运行的进程

kill -9 QQ.exe  终止进程,-9表示强迫进程立即停止,可以先用ps或top命令查看进程的id,然后再用kill命令杀死进程

打包压缩相关命令:

gzip:

bzip2:

tar:    打包压缩

-c  归档文件

-x  压缩文件

-z  gzip压缩文件

-j  bzip2压缩文件

-v  显示压缩或解压过程 v(view)

-f  使用档名

例:

tar -cvf /home/abc.tar /home/abc        只打包,不压缩

tar -zcvf /home/abc.tar.gz /home/abc    打包,并用gzip压缩

tar -jcvf /home/abc.tar.bz2 /home/abc  打包,并用bzip2压缩

当然,如果想解压缩,就直接替换上面的命令tar  -cvf  /  tar  -zcvf  /  tar  -jcvf 中的“c” 换成“x” 就可以了。

关机命令:

shutdown now  立刻关机

shutdown +5  5分钟后关机

shutdown 23:10  设置系统在23点10分时关机

shutdown -r now  立刻关闭系统并重新启动

shutdown -h    关机不重启

halt      关机

reboot    重启

管道的概念:

连接前面的输出与后面的输入

  比如,我要先脱衣服再睡觉。我可以分两个命令执行,1。脱衣服 2。睡觉。但是通过管道,我可以把两步写在一起:脱衣服 | 睡觉。当然我也可以把三四个步骤(命令)写在一起,但前一个命令必须是后一个命令的前提条件。像我举的那个例子,我不可能先睡觉再脱衣服。

例:

# ls -l | more  -l把显示所以结果,“|” 连接, more进行分屏显示

用户及用户组管理:

/etc/passwd    存储用户账号

/etc/group    存储组账号

/etc/shadow    存储用户账号的密码

/etc/gshadow  存储用户组账号的密码

useradd        添加用户名

userdel        删除用户名

adduser        添加用户名

groupadd      添加组名

groupdel      删除组名

passwd root    给root设置密码

su root

su – root

/etc/profile  系统环境变量

bash_profile  用户环境变量

.bashrc        用户环境变量

su user        切换用户,加载配置文件.bashrc

su – user      切换用户,加载配置文件/etc/profile ,加载bash_profile

更改文件的用户及用户组:

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

更改权限:

sudo chmod [u所属用户  g所属组  o其他用户  a所有用户]    [+增加权限  -减少权限]  [r  w  x]  目录名

例如:有一个文件filename,权限为“-rw-r—-x” ,将权限值改为”-rwxrw-r-x”,用数值表示为765

sudo chmod u+x g+w o+r filename

上面的例子可以用数值表示

sudo chmod 765 filename

文件权限管理:

三种基本权限

R  读  数值表示为4

W  写  数值表示为2

X  可执行 数值表示为1

如图所示,jdk-7u21-linux-i586.tar.gz文件的权限为-rw-rw-r–

-rw-rw-r–一共十个字符,分成四段。

第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

第二三四个字符“rw-”表示当前所属用户的权限。    所以用数值表示为4+2=6

第五六七个字符“rw-”表示当前所属组的权限。        所以用数值表示为4+2=6

第八九十个字符“r–”表示其他用户权限。                所以用数值表示为2

所以操作此文件的权限用数值表示为662?

上一篇下一篇

猜你喜欢

热点阅读