linux系统之达人养成1linux1.docx

上传人:b****6 文档编号:7495861 上传时间:2023-01-24 格式:DOCX 页数:19 大小:25.29KB
下载 相关 举报
linux系统之达人养成1linux1.docx_第1页
第1页 / 共19页
linux系统之达人养成1linux1.docx_第2页
第2页 / 共19页
linux系统之达人养成1linux1.docx_第3页
第3页 / 共19页
linux系统之达人养成1linux1.docx_第4页
第4页 / 共19页
linux系统之达人养成1linux1.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

linux系统之达人养成1linux1.docx

《linux系统之达人养成1linux1.docx》由会员分享,可在线阅读,更多相关《linux系统之达人养成1linux1.docx(19页珍藏版)》请在冰豆网上搜索。

linux系统之达人养成1linux1.docx

linux系统之达人养成1linux1

linus常用命令--达人养成1

格式:

命令选项参数

1、-a是--all//不全是,分简化选项和完整选项,例如ls-a显示所有文件包括隐藏;ls-l显示详细信息,ls-lh人性化显示;ls-d显示目录属性;ls-s人性化显示文件大小;ls-i显示inode;

Inode显示的是文件的元信息;ls-l与ll等效

2、Block的概念一个block=n*一个扇区例如4K;incode记录的是文件原属性,大小占8k,个数是:

硬盘容量/8K;

3-rw-r--r--.1rr默认是10位;最后的“.”是ACL权限;“1”是引用计数;rr对应ug

-文件类型(-目录d文件l软连接)

rw-r--r--

u所有者g所属组o其他人

R读w写x执行

.开头的文件是隐藏的文件

4.mkdir-p【目录名】

-p递归创建//递归的意思是:

创建的目录下存在下一级目录

命令英文原意:

makedirectories

5changgedirectory切换目录

cd~与cd直接回车:

进入根目录pwd当前所在家目录

cd-进入上次目录cd..进入上一级目录cd.进入当前目录

6相对路径cd../home/front

绝对路径初学者尽量使用绝对路径cd/home/front/abc

Tab:

命令补全;可以识别命令与目录补全,按两下tab键。

7pwd

命令英文原意:

printworkingdirectory//打印工作目录

8rmdir目录名删除空目录

命令英文原意:

removeemptydirectories

rm-rf-r删除目录-f强制;rm-rf/删除根目录,较新的会删掉99%仍运行

rm-rf/tmp/*删除目录下的内容rm-rf/tmp/删除系统目录

被删除的数据不能被完整恢复!

9cp{-r-p-d-a}【原文件或目录】【目标目录】

-r复制目录,-p连带文件属性复制,-d若源文件是链接文件,则复制链接-a相当于-pdr

cp-r文件的时间是当前的cp-a完全复制所有属性,包括时间。

10mv{无-a-p的}【原文件】【目的文件】

同一目录做改名使用,不同目录做剪切改名

mv/wangning//home/wan

11一级目录的含义

/根目录/bin/boot

/dev/etc/home

/lib/mnt/media

根下binusr下bin是存放普通用户命令的;根下sbinusr下sbin是root专用的

/boot:

启动目录保存启动数据;dev:

特殊文件保存目录

/etc:

系统默认配置文件,学习服务时多次用到这个文件;

/home:

普通用户文件;root:

超级用户文件;

/lib:

函数库存放目录,需要时调用;

/media光盘mntU盘misc磁带机三个空目录挂在用;

/procsys不能直接操作,两个目录保存的是内存的挂载点;

/tmp临时目录,可存放临时文件等;

/usr系统软件资源目录;

/var系统可变文档目录;尽量不要在根目录搞文件;

12链接文件

ln-s【原文件】【目标文件】

命令英文原意:

link

功能描述:

生成链接文件

选项:

-s创建软链接

硬链接特征:

1拥有相同的i节点和存储block块,可以看做是同一个文件

2可以通过i节点识别

3不能垮分区

4不能针对目录使用

硬链接特征:

1类似于Windows快捷方式

2软链接拥有自己的I节点和Block块,但是数据块中只保存原文件的文件名和I节点号,并没有实际的文件数据

3lrwxrwxrwxl软链接软链接文件权限都为rwxrwxrwx

4修改任意文件,另一个都改变

5删除原文件。

软链接不能使用

touch:

touchabc创建一个abc文件;echo111>>/root/wang:

对wang加一个值;

13文件查找命令

locate;whereswhich;find;grep;find与grep的区别

locate文件名//访问数据库查找且/var/lib/mlocate一天更新一次

解决方法执行updatedb更新数据库

缺点:

只能按照文件名查找tough/tmp/abc在updatedblocate会找不到abc

**/etc/update.conf配置文件

PRUNE_BIND_MOUNTS=”yes”#开启搜索限制

PRUNEFS=#搜索时,不搜索的文件系统

PRUNENAMES=#搜索时,不搜索的文件类型

PRUNEPATHS=#搜索时,不搜索的路径

14搜索命令的命令

whereiswhich

whereis{-b-m}命令名;-b:

只查找可执行文件,-m:

只查找帮助文件

whereisls//寻找ls命令在哪个目录下,及帮助文档在哪个目录下;

例如whoami、whatisls这些命令

whereis-bls,whereis-mls;//只能查系统命令所在地;

which

which文件名#搜索命令所在路径及别名;例aliasls=“ls--color=auto”

whereiscd、whichcd没有结果;cd是shell的命令;

echo$PATH//显示环境变量;自己写的脚本加绝对路径执行或加到变量里边;

15find

find搜索范围搜索条件#搜索文件

find/-nameinstall.log#避免大范围搜索会非常消耗系统资源

#find是在系统中搜索符合条件的文件名。

如果需要匹配,使用通配符匹配,通配符是完全匹配;

*匹配任意内容;?

匹配任意一个字符;【】匹配任意一个中括号内的字符;

find/root-name“*【cd】”//搜索以/root下以c或d结尾的文件;

注意:

用通配符要加双引号;

find/root-inameinstall.log#不区分大小写

find/root-userroot#按照所有者查询

find/root-nouser#查找没有所有者的文件,内核产生的文件没有所有者不经过系统,sys、proc例如内存目录;外来数据可能没所有者。

find/var/log/-mtime+10#查找10天前修改的文件

-10:

10天内的修改的文件;10:

10天当天修改的文件

atime:

文件访问时间;ctime:

改变文件属性;mtime修改文件内容

find.-size25k#查找文件大小是25KB的文件

-25k:

小于25KB的文件;25k:

等于25KB的文件;+25k:

大于25KB的文件

注意:

k级别用小写,M级别用大写;不带单位默认是数据块(扇区),此处区别于分区数据块概念;

find.-inum262422#查找i节点是262422的文件;此处可以与ls-i命令配合只用;

find/etc-size+20k-a-size-50k

#查找/etc/目录下,大于20kb并且小于50kb的文件

-aand逻辑与。

两个条件都满足;

-oor逻辑或。

两个条件满足一个即可;

find/etc-size+20k-a-size-50k-execls-lh{}\;

#查找/etc/目录下,大于20kb并且小于50kb的文件。

并显示详细信息

#-exec/-ok命令{}\;对搜索结果执行操作;

find/etc-size+20k-a-size-50k-execrm-rf{}\;

#查找的结果进行删除。

//-exec命令{}\;这是格式;

16grep

grep选项字符串文件名;#在文件中匹配符合条件的字符串;

-i忽略大小写;-v排除指定字符串;

区别:

find是找文件名;grep是找文件中的字符串;

17帮助

man命令与其他命令man是manual(文档)的缩写;

man命令#获取制定命令的帮助

manls查看ls的帮助

#1“查看命令的帮助”

2查看可被内核调用的函数的帮助

3查看函数和函数库的帮助

4查看特殊文件的帮助

5查看配置文件的帮助

6查看游戏的帮助

7查看其它杂项的帮助

8查看系统管理员可用命令的帮助

9查看内核相关文件的帮助

man-f相当于whereis

man-5passwd、man-4null、man-8ifcofig

man-k命令与apropos查找关于passwd所有相关的帮助

例如apropospasswd

18其他帮助命令

命令--help;ls--help

helpshell内部命令#获取内部命令权限

例如:

whereiscd#确定是否是shell命令

helpcd#获取内部命令帮助

Shell内部自带的命令

Info命令

回车:

进入子菜单页面(带有*号标记)

-u:

进入上层页面

-n:

进入下一个帮助小节

-p:

进入上一个帮助小节

-q:

退出

19压缩(带上扩展名,方面自己识别是压缩文件)压缩目录加-r

zip压缩文件名源文件

zip-r压缩文件名源目录//mkdir创建目录,tough创建文件

unzip解压文件/文件夹#解压缩文件/文件夹;windows下的zip可以在linus中解压,.rar不行;

gzip原文件#压缩为.gz格式的压缩文件,源文件会消失

gzip-c源文件.>压缩文件

#压缩为.gz格式,源文件保留

例如:

gzip-ccangls>cangls.gz

gzip-r目录

#压缩目录下所有的子文件,但是不能压缩目录;

gzip-d压缩文件#解压缩文件

gunzip压缩文件#解压缩目录下子文件夹

 

bzip2源文件#压缩为.bz2格式,不保留源文件。

bzip2-k源文件#压缩之后保留源文件

bzip2-d压缩文件#解压缩,-k保留压缩文件;

bunzip2压缩文件#解压缩,-k保留压缩文件;

注意:

bzip2命令不能压缩目录

20压缩

.tar.gz.tar.gz2

tar-cvf打包文件名源文件

选项:

-c打包-v显示过程-f指定打包后的文件名

例如tar-cvflongzls.tarlongzls

tar-xvflongzls.tar

其实.tar.gz格式是先打包为.tar格式,在压缩为.gz格式

选项-z:

压缩为.tar.gz格式

tar-zxvf压缩包.tar.gz

选项:

-x解压缩为.tar.gz格式

tar-zcvflongzls.tar.gzlongzls#直接打包压缩

tar-zxvflongzls.tar.gz#直接解包解压缩

tar-jcvflongzls.tar.bz2longzls#直接打包压缩

tar-jxvflongzls.tar.bz2#直接解包解压缩

tar-jxvflongzls.tar.bz2-c/tmp/#指定解压缩位置

tar-zcvf/tmp/longzls.tar.gzabcabcd#多个文件压缩在指定目录下;

tar-ztvf查看压缩包包含内容

注意:

不同格式用的-*会不同。

21重启

远程工具Xshell

shutdown选项时间//关机重启可保存,不至于丢失东西,shutdown更为保险;

其他关机方法会出现硬盘损坏等问题;

-t:

取消前一个关机命令;-h:

关机;-r:

重启;

例如:

shutdown-rnow

shutdown-r05:

30&//5:

30关机,并放入后台执行;

其他关机命令:

halt、poweroff、init0;不是太安全。

reboot、init6#重启命令

系统运行级别

0关机;1单用户;2不完全多用户,不含NFS服务;3完全多用户;4未分配;5图形界面;6重启;

runlevel//查看运行级别执行结果是:

N3//N表示之前是空级别,现在是3级别

cat/etc/inittab//查看运行级别

logout#退出登录

22linux其他常用命令

挂载命令:

用户登录查看和用户交互命令:

1查询与自动挂载

mount#查询已经挂载的设备

mount-a#依据配置文件/etc/fstab的内容,自动挂载;

mount【-t文件系统】【-o特殊选项】设备文件名挂载点

选项:

-t文件系统:

加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统

-o特殊选项:

可以指定挂载的额外选项

vihello.sh

#!

/bin/bash//这句话是标称以下是linux脚本

chmod755hello.sh

mount-oremount,noexec/home#重新挂载/boot分区,并使用noexec权限

#cd/home

#vihello.sh

#chmod755hello.sh

#./hello.sh

#mount-oremount,exec/home

注意因挂载选项的原因导致的权限的不足,noexec/exec//不执行与执行

挂载光盘

#mkdir/mnt/cdrom//建立挂载点

#mount-tiso9660/dev/cdrom/mnt/cdrom//挂载光盘

#mount/dev/sr0/mnt/cdrom//挂光盘可以省略-tiso9660

卸载光盘

#umount文件名或挂载点

#umount/mnt/cdrom//退出当前目录然后在卸载;

挂载U盘

#fdisk-l

#mount-tvfat/dev/sdb1/mnt/usb//fat32文件系统

注意:

linux默认是不支持NTFS文件系统的

查看用户登录信息

W用户名

USER:

登录的用户名TTY:

登录终端

FROM:

从哪个IP地址登录LOGIN@登录时间

IDLE:

用户闲置时间JCPU:

指的是和改终端连接的所有进程占用的时间,这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所用的时间,

PCPU:

是指当前进程所占用的时间

WHAT:

当前正在运行的命令;

who用户名;命令输出(用户名、登录终端、登录时间;来源ip地址)

 

last//last命令默认是读取/var/log/wtmp文件数据

命令输出(用户名、登录终端、登录ip、登录时间、推出时(在线时间))

#ls/var/log/wtmp用last查看wtmp中的内容

#vi/var/log/wtmpvi命令直接打不开wtmp文件,此文件不能修改

lastlog//last命令默认是读取/var/log/lastlog文件数据

命令输出(用户名、登录终端、登录ip、最后一次登录时间)

Shell基础

一Shell基础

二脚本的执行方式

三Bash的基本功能

Shell是一个命令行解释器,它为用户提供了一个向linux内核发送请求以变运行程序的界面系统级程序,用户可以用shell来启动、挂起、停止甚至是编写一些程序。

Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性强。

Shell是解释执行的脚本语言,在shell中可以直接调用linux系统命令。

Shell的分类

BourneShell:

从1979年起Unix就开始使用BourneShell,BourneShell的主文件名为sh

CShell:

CShell主要是在BCD版本的Unis系统中使用,其语法和C语言相类似而得名;

Shell主要有两种语法类型有Bourne和C,这两种语法彼此不兼容。

Bourne家族主要包括sh、ksh、Bash、psh、zsh;C家族主要包括:

csh、tcsh是UNIX使用的。

echo$SHELL//查看SHELL版本

Bash:

Bash与sh兼容,下载使用的就是使用Bash作为用户的基本Shell

vi/etc/shells//查看shells本机支持哪些shell

sh//回车后会显示sh-4.或其他版本

exit退出;csh界面执行后跟bash一样

怎么判定此刻在什么Shell之中?

父shell还有子shell?

期待后续讲解

#脚本执行方式

#echo输出命令//指定内容输出到屏幕上

echo【选项】【输出内容】

选项:

-e支持反斜线控制的字符转换

#echo“bolsandcanlswhichisbest”

-e能识别的字符

\a输出警告音\b退格键,也就是向左删除键

\n换行符\r回车键

\t制表符,tab键\v垂直制表符

\0nnn按照8禁止ASCII码表输出字符,其中0为数字零,nnn是三围8禁止数

\xhh按照16进制ASCII码表输出字符。

其中hh是两位16进制数。

例子:

echo-e”hello”echo-e“h\te\tl\nl\to\t”

Echo-e“\x68\t\x65\t\x6c\n\x6c\n\x6c\t\x6f\t”

#按照16进制同样输出

#echo-e“\e【1;31m家人就要嫁凤姐\e【0m”

“\e【1;”调用颜色并开启;”\e【0m”调用颜色并关闭颜色

3输出颜色

#30m=黑色,31m=红色,32m=绿色,33m=黄色,

#34m=蓝色,35m=洋红,36m=青色,37m=白色,

例子:

echo“嫁人就要嫁凤姐”//不能再引号里边加!

echo-e“嫁人就要嫁凤姐”

写一个脚本:

#vihello.sh

#!

/bin/bash//#代表注释不生效,但是除了本行之外;

#Thefirstprogram

#echo-e“\e[1;34m天上掉下个琳妹妹!

\e[0m”

例子:

vimhello.sh

#!

bin/bash

#这是第一个shell脚本

echo-e“天上掉下来个林妹妹”

写完后执行:

chmod755hello.sh./hello.sh或/root/hello.sh赋予权限后直接执行

bashhello.sh通过bash调用执行脚本

Bash的基本功能:

1命令别名与快捷键

2历史命令

3输出重定向

4多命令顺序执行

5Shell中的特殊符号

别名与快捷键#alias

输出aliascp=‘cp-i’aliasl.=‘ls-d’.*--color=auto’

aliasll=‘ls-l--color=auto’aliasmv=‘mv-i’

aliaswhich=‘alias|/usr/bin/which--tty-only--read-alias--show-dot--show-t‘

例子:

ls--color=never/用这个命令来修改alias

#aliasls=‘ls--color=never’

#alias查看是否已经加入的alias中

例如:

#aliasvi=‘vim’这是设定别名,临时生效,重启就消失

#vi~/.bashrc写入环境变量配置文件,不知这一个文件。

 

#vi/root/.bashrc进入这里边增加一行aliasvi=‘vim’

随之执行#source.bashrc或直接#aliasvi=‘vim’

unalias别名//删除别名,是临时删除,vi.bashrc彻底删除;

命令生效顺序:

第一顺序位执行用绝对路径或相对路径执行的命令

第二顺位执行别名

第三顺位执行Bash的内部命令//可以用whereis查一下

第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令;

快捷键:

ctrl+c强制停止当前命令ctrl+l清屏ctrl+a光标移到到命令行首

ctrl+e到行尾ctrl+u从光标位置删到行首

ctrl+z命令放入后台ctrl+r在历史命令中搜索

clear与ctrl+l是清屏

历史命令

history【选项】【历史命令保存文件】//显示包括本次开机后的

选项-c清空历史命令

-w把缓存中的历史命令写入历史命令保存文件~/.bash_history

直接执行history显示历史命令、

#cat.bash_history//这里边存放的是本次开机之前的,-w同步

历史命令默认保存1000条,可以在环境变量配置文件/etc/profile中进行修改

历史命令的调用

使用上下箭头调用以前的历史命令

使用“!

n”重复执行第n条历史命令

使用“!

”重复执行上一条历史命令

使用“!

字符串”重复执行最后一条以改字串开头的命令

命令和文件的补全

在bash中,命令与文件补全是非常方便的与常用的功能,我们只要在输入命令或文件时

按住tab建就会自动进行补全

user//两次tab键可以列出user开头的所有命令,

注意命令补全是依赖$PATH变量;目录补全是依赖目录;

输出重定向(包括输入和输出)

标准输入设备只有键盘

键盘:

/dev/stdin文字描述符0标准输入

显示器/dev/sdtput1标准输出

显示器/dev/sdterr2标准错误输出

 

类型

符号

作用

 

标准输出重定向

命令>文件

以覆盖的方式,把命令的正确输出到指定的文件或设备当中

命令>>文件

以追加的方式,把命令的正确输出输出到指定的文件或设备中去

 

标准错误输出重定向

错误命令2>文件

以覆盖的方式,把错误的命令输出到指定的文件或设备当中,红字没有空格

错误命令2>>文件

以追加的方式,把错误的命令输出输出到指定的文件或设备中去,红字没有空格

 

正确输出和错误输出同时保存

命令>文件2>&1

以覆盖的方式,把正确和错误输出都保存到同一个文件夹中

命令>>文件2>&1

以追加的方式,把正确输出和错误输出都保存的同一文件夹中;死记硬背

命令&>文件

以覆盖的方式,把正确输出和错误输出都保存到同一文件夹中;

命令&

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1