随笔三、Linux命令基础知识

来源:互联网 发布:圣骑士挖矿软件 编辑:程序博客网 时间:2024/05/16 13:56

一:相关知识:

linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是巨型项目都在使用linux

linux的文件系统是采用层级式的树状目录结构/root/home/。。(windowsc\d\e\f盘。

linux 7大运行级别:0  系统停止   1单用户  2多用户 不支持NFS  3多用户,命令行模式登陆(我们常用的运行级别)4未用5 图形化界面6 重新启动。

特点--免费,开源。

--支持多线程,多用户,多并发。

--安全性好。

--对内存,文件管理优越。

--Linux最小只有4m->嵌入式开发(手机用户多 多么庞大的市场)。

缺点:操作相对困难。

- /  ,根目录

- root,存放root用户的相关文件

- home,存放普通用户的相关文件(待会儿我新建用户,它就会在home目录给你创建个目录)

- bin,存放常用命令的目录,cd /(目录切换到根目录,大家可以用个命令来看下pwdcd bin,lsl ,可以看到vi ,su命令,vi删掉 那么vi命令就用不了了)如visu

- sbin,要具有一定权限才可以使用命令

- mnt,默认挂载光驱和软驱的目录

- etc,存放配置的相关文件(数据库,环境变量的配置)

- var,存放经常变化的文件,如网络连接的sock文件

- boot,存放引导系统启动的相关文件(文件被破坏了,Linux就起不来了 和windows类似)

- usr,安装一个软件的默认目录,相当于windows下的program files

shutdown h now:立即进行关机                                          shutdown r now:现在重新启动计算机

root:超级管理员账号

uname -r:查看系统版本                                  whoami:  查看当前用户

netstat -an:  查找linux或者windows下所有的端口

二:基本命令。

1.=

pwd

显示当前目录。

ls

查看当前目录的内容。

cd

更改目录。

ls  –a

列举目录中的全部文件,包括隐藏文件。

cd~

转到/home/user下。

ls  –l/ll

列举目录中细节。

clear

清屏。

ls  –f

列举的文件显示文件类型。

ls -s

按文件大小排序列举。

ls -R

递归列举。

 Linux支持三种格式的shell脚本,分别是kshcshsh

echo $变量名:输出变量名的值

env:查看到所有环境变量

set:查看所有环境和本地定义的临时变量

localhost:表示主机名

mkdir --help:查看命令的帮助信息

man mkdir:查看命令的详细帮助

 

2.文件管理命令:

 

mkdir 文件夹名:创建空文件夹。

rmdir 文件夹名:删除空文件夹。

 

mkdir -p ./first/second:创建多层文件夹(firstsecond都不存在情况下建目录)。

rmdir -p ./first/second/:删除second目录后。若first是空的,连first一块删除。

 

touch 文件名:创建文件。

rm -f 文件名:删除文件。

 

rm -rf 文件名/文件夹 文件名/文件夹:同时删除两个目录及它们的内容。(强制性)

 

cp 源文件路径/源文件名 目标路径:拷贝文件。

cp -R 源文件路径/源目录名 目标路径:拷贝文件夹(连内容)。

 

mv 源文件名 目标文件名:文件改名/移动文件(文件和文件夹一样操作)

3.查看文件命令:

1more文件名          :按回车一行,空格一页。不能向上下翻行。

2less文件名          :按回车一行,空格一页。可以通过上下键上下翻行。按q就退出。

3head -n文件名       :查看文件的前n行,n表示你要看的行数。

4tail -n文件名       :查看文件的后n

5cat文件名           :查看文件的所有内容

6cat -n文件名        :查看文件的所有内容,并显示行数

4. >      导入(复制)   cat A > B     A的内容导入到B(把原来的内容覆盖)

    >>    追加导入      cat A B >>C   AB的内容导入C

5、对文件内容筛选查找,用 "管道:|"grep命令。

查找系统中80端口的信息:netstat -an | grep 80

练习:查找ifcfg-eth0中包含“OOT”字符串的信息

        cat ifcfg-eth0 | grep OOT

6find 路径参数参数值:返回值是一个路径

find /home -size +10k:搜索指定大小的文件。

find /root -name 文件名:

7.locate 文件名:根据索引表查找文件,效率高(需要经常更新索引)。

8.wc -l 文件名:统计行数

    wc -m 文件名:统计字符数

    wc -c 文件名:统计字节数

9.(.tar)、压缩文件(.gz)、压缩包(.tar.gz.tgz)

打包tar –cvf  f101.tar f101

  查看包内容:tar –tvf  f101.tar

  解包到当前目录:tar –xvf  f101.tar

  解包到指定目录:tar -xvf  f101.tar -C 指定目录

 

对文件压缩:只能压缩一个文件(不能是文件夹)。

gzip -1(压缩比1--9) f101.txt

查看压缩包内容:gzip -l f101.gz

解压:gzip -d f101.gz

              gunzip f101.gz

对包压缩:(1)先打包:tar -cvf f101.tar f101

       (2)再压缩:gzip -9 f101.tar(形成f101.tar.gz文件)。

打包并压缩tar -czvf f101.tar.gz f101

查看打包压缩包内容:tar -tzvg f101.tar.gz

【附】windowszip解压:

unzip -d f101/  f101.zip(解压到f101目录下)。

三:网络配置命令。

1.ifconfig -a:查ip信息

  ping ip地址:是否通

  setup

  service network restart:重启服务

  hostname:主机名

  ssh:被访问的机器的用户名@被访问的机器的IP

  scp -r  被访问的机器的用户名@被访问的机器的IP:/被复制的文件的路径 目标路径(远程复制文件/夹)

2.文件下载命令:wget下载文件路径。

3.useradd 用户名:

useradd

添加用户。

groupadd  -g

 

su –用户名

切换用户。

passwd

 

groupadd  -n

组改名。

usermod –L/U

锁定/解锁用户。

groupadd

添加分组。

groupdel

删除组。

Userdel  -r

彻底删除用户。

usermod -a -G groupA user:将user用户加到groupA组中。

4.1.权限:drwxr-xr-x  2 root root 4.0K 11-06 18:30 Desktop

      d表示是个普通文件夹,-表示普通文件

第一个rwx,表示该文件所属的用户对其所拥有的操作权限

第二个rwx,表示与该文件所属用户在同组内的用户对其所拥有的操作权限

第三个rwx,表示不与该文件所属用户在同组内的用户对其所拥有的操作权限

第一个root:表示该文件夹属于哪个用户

第二个root:表示该文件夹属于哪个组

drwxr-xr-x(一个组中可以包含0到多个用户)

  d表示是个普通文件夹,-表示普通文件

 urwx:文件拥有者具备的权限(u),7,

 gr-x:文件所属组中的其他用户所具备的权限(g),5,

 or-x:其他用户所具备的权限(o),5,

最大是777(drwxrwxrwx),最小是000(d---------)。      chmod 777/u+rg+wx

4.2.更改权限命令:

1、更改单个文件的属主:

语法:chown 用户名 文件名      chown wsg echo.sh

2、更改文件夹的属主:

语法:chown -R 用户名 文件名

chown -R u101 Desktop/ #单独更改文件夹的拥有者(-R表示文件夹的所有子内容全部更改)

3、更改单个文件的属组:

语法:chgrp 组名 文件名       chgrp g1015 echo.sh

4、更改文件夹的属组

语法:chgrp -R 组名 文件名 chgrp -R g1015 Desktop/ #单独更改文件夹的所属组

5、同时更改文件的拥有者和所属组

语法:chown 用户名:组名 文件名 chown u101:g1015 install.log.syslog #同时更改文件的拥有者和所属组

6、同时更改文件夹和文件夹下的所有内容的拥有者和所属组

语法:chown -R 用户名:组名 文件名 chown -R u101:g1015 test01 #同时更改文件的拥有者和所属组

四:==============

cal

查看日期

date –s

修改系统时间

whoami

当前登录用户

date

查看时间

who

查看有哪些用户登录了系统

history

查看历史命令

less 文件名

查看文件

grep zpp /etc/passwd

/etc/passwd文件中查找zpp字符串

grep  -n

查询并显示行号

du –h 文件/

查大小

echo $变量名

变量名的值

chkconfig -list

列出所有服务

ps

查看当前终端正在运行的进程

ps –ef |grep  bash

查看系统正在运行的进程名包含bash的进程。

lsof –i 进程号

显示指定进程号的进程名。

df -h

查磁盘信息

free –m

查看可同内存

vmstat

查看虚拟内存

 

 【例题】强制踢出已登录用户。

方式一: ps -ef | grep 用户名  #查到用户登陆的进程号对应的pid

kill -9 登陆进程号

ps -ef | grep wushigui

kill -9 3611     

方式二:killall -9 -u 用户名

 killall -9 -u wushigui

【重】sed -ne 5p:显示第5行数据。

sed -ne 3,30ptermp:显示文件指定范围的行(例:第3行到第30)

awk {print $2}:以空格分隔并显示第列数据。

awk -F:‘{P[print $2}:以冒号分隔并显示第2列数据。

【例题】在命令输入端显示192.168.2.13

答案一: cat /etc/sysconfig/network-scripts/ifcfg-eth0 |sed -ne '5p'|awk -F= '{print  $2}

[] cat /etc/sysconfig/network-scripts/ifcfg-eth0-----#查看文件的内容

     sed -ne '5p'-----#显示第5行数据

     awk -F= '{print  $2}-----#以“=”分割,显示第2列数据

答案二:ifconfig | sed -ne 2p| awk '{print $2}' | awk -F: '{print $2}'

答案三:ifconfig | awk '{print $2}' | sed -ne '2p' | awk -F: '{print $2}'

[] awk '{print $2}' -------以空格分隔并且显示第2列数据

     awk -F: '{print $2}'------以‘:’分隔并且显示第二列数据

五:=======

1. vi模式命令

:set nu

显示行号。

:q

退出。

:q!

强制退出。

:set nonu

不显示行号。

:wq

保存并退出。

:w 文件名

另存为。

:w

保存。

:n

跳转到指定行。

 

 

9:n,m/需要替换的字符串/替换字符串/参数。

n表示从第n1行开始,表示一个具体的数字,比如:1

m表示从第n2行结束,表示一个具体的数字,比如:20

参数:g表示所有找出字符都替换没有确认。

c表示每一次都确认

i表示忽略大小写,但是i需要跟c或是g一起使用。

Eg:s/is/IS/ #替换当前行第一个isIS

:s/is/IS/g #替换当前行所有isIS

10】换包含特殊字符的内容,如,把字符串li"n/u"x置换为Linux,此时需要用到置换符\

:1,$s/li\"n\/u\"x/Linux/g   #把特殊字符用\置换成普通字普通字符

规则:特殊字符===\特殊字符

[格式]:n,$s/       /   /g。【重点】

2. 命令模式下的命令:

G

的末行

ndd

删除n

D

删除到行尾

gg

到首行

u

撤销

yy

复制一行

$

到尾行

o

新增一行并进入到编辑模式,向下增加。如果是大写的o,就是向上增加。

/搜索字符

字符串搜索,查找下一个,按n, 向下查找。如果向上查找,按N

^

到行首

i

进入编辑模式,前编辑

nyy

复制n

ng

跳到n

a

进入编辑模式,后编辑

p

粘贴

dd

删除当前行

x

删除一个字符

 

 

mount :挂载光驱

umount:卸载挂载的文件系统

rpm - ivh 软件名:安装软件

rpm -e 安装包名:卸载软件

0 0