Linux命令 - find、file、export 、yum、ln、pstree、stat、timedatectl 、locale、cp、mv、dirname和basename

x33g5p2x  于2021-11-28 转载在 Linux  
字(7.9k)|赞(0)|评价(0)|浏览(282)

find

概念

用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

语法

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

例:

查找以.jpg结尾的文件

[root@localhost ~]# find / -name "*.jpg"
/usr/share/backgrounds/morning.jpg
/usr/share/backgrounds/night.jpg
/usr/share/backgrounds/day.jpg
/usr/share/backgrounds/default.jpg
/usr/share/kde4/apps/ksplash/Themes/CentOS7/2560x1600/background.jpg
/usr/share/wallpapers/CentOS7/contents/images/2560x1600.jpg

file

用于辨识文件类型

语法

file [-bcLvz][-f <namefile>][-m <magicfiles>...][文件或目录...]

命令参数

-b        列出文件辨识结果,不显示文件名称

[root@localhost lianxi]# file /etc/passwd -b
ASCII text

-i        输出mime类型的字符串·

[root@localhost lianxi]# file /etc/passwd -i
/etc/passwd: text/plain; charset=us-ascii

-F        使用指定分隔符替换输出文件名后的默认的”:“分隔符

[root@localhost lianxi]# file /etc/passwd -F "--"
/etc/passwd-- ASCII text

-z        尝试去解读压缩文件内容

--help        获取命令的帮助信息

[root@localhost lianxi]# file --help

export 

用于设置或显示环境变量

语法

export [ -fnp ]    [变量名称]=[变量设置值]

参数

-f        代表[变量名称]中为函数的名称

-n        删除指定的变量,变量实际未删除,只是不会输出到后续指令的执行环境中

-p        列出所用的shell赋予程序的环境变量

例:

建局部变量提升为全局变量

[root@localhost ~]# echo $a

[root@localhost ~]# a=1
[root@localhost ~]# echo $a
1
[root@localhost ~]# bash
[root@localhost ~]# echo $a

[root@localhost ~]# exit
exit
[root@localhost ~]# export a
[root@localhost ~]# echo $a
1
[root@localhost ~]# bash
[root@localhost ~]# echo $a
1
[root@localhost ~]#

列出当前环境变量值

[root@localhost ~]# export -p
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="localhost.localdomain"
declare -x LANG="zh_CN.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
declare -x PWD="/root"
declare -x SELINUX_LEVEL_REQUESTED=""
declare -x SELINUX_ROLE_REQUESTED=""
declare -x SELINUX_USE_CURRENT_RANGE=""
declare -x SHELL="/bin/bash"
declare -x SHLVL="2"
declare -x SSH_CLIENT="192.168.237.1 7481 22"
declare -x SSH_CONNECTION="192.168.237.1 7481 192.168.237.130 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"
declare -x XDG_RUNTIME_DIR="/run/user/0"
declare -x XDG_SESSION_ID="11"
declare -x a="1"

yum

yum提供了查找、安装、删除某一个、一组甚至全部软件安装包的命令

语法

yum [options] [command] [package ...]

yum常用命令

ln

用于创建同步的链接文件,就是windows里面的快捷方式

而链接又可分为两种硬链接(hard link)与软链接(symbolic link) :

硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。

硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。

不论是硬链接还是软链接占用的内存都是非常少的

语法

ln [参数][源文件或目录][目标文件或目录]

参数:

例:

[root@localhost lianxi]# ln -s hunan changsan
[root@localhost lianxi]# ls
a.java  b.java  changsan  c.java  e.java  guangdong  hubei  hunan
[root@localhost lianxi]# ll
总用量 0
-rw-r--r--. 1 root root  0 11月 27 13:51 a.java
-rw-r--r--. 1 root root  0 11月 27 13:54 b.java
lrwxrwxrwx. 1 root root  5 11月 28 14:08 changsan -> hunan
-rw-r--r--. 1 root root  0 11月 27 13:54 c.java
drwxr-xr-x. 2 root root  6 11月 28 12:38 e.java
drwxr-xr-x. 4 root root 32 11月 27 14:12 guangdong
drwxr-xr-x. 3 root root 19 11月 27 14:08 hubei
drwxr-xr-x. 4 root root 34 11月 27 14:54 hunan
[root@localhost lianxi]#

pstree

查看linux系统里的进程树,用来描述进程和进程之间的关系进程族谱

语法

pstree  (选项)

常用选项

例:

[root@localhost lianxi]# pstree -p
systemd(1)─┬─NetworkManager(837)─┬─dhclient(16897)
           │                     ├─{NetworkManager}(848)
           │                     └─{NetworkManager}(851)
           ├─VGAuthService(764)
           ├─auditd(739)───{auditd}(740)
           ├─chronyd(774)
           ├─crond(783)
           ├─dbus-daemon(770)───{dbus-daemon}(777)
           ├─firewalld(804)───{firewalld}(986)
           ├─irqbalance(762)
           ├─login(790)───bash(1674)
           ├─lvmetad(570)
           ├─master(1419)─┬─pickup(24504)
           │              └─qmgr(1425)
           ├─polkitd(781)─┬─{polkitd}(791)
           │              ├─{polkitd}(792)
           │              ├─{polkitd}(793)
           │              ├─{polkitd}(794)
           │              ├─{polkitd}(795)
           │              └─{polkitd}(798)
           ├─rsyslogd(1185)─┬─{rsyslogd}(1191)
           │                └─{rsyslogd}(1193)
           ├─sshd(1181)─┬─sshd(20437)───bash(20441)───bash(20515)───pstree(24563+
           │            └─sshd(23933)───bash(23938)
           ├─systemd-journal(544)
           ├─systemd-logind(766)
           ├─systemd-udevd(580)
           ├─tuned(1183)─┬─{tuned}(1587)
           │             ├─{tuned}(1588)
           │             ├─{tuned}(1590)
           │             └─{tuned}(1591)
           └─vmtoolsd(765)───{vmtoolsd}(800)

stat

用于显示文件或系统的详细信息

语法

stat [OPTION]... FILE...

参数:

-f        显示文件所在的文件系统的信息

[root@localhost ~]# stat lianxi -f
  文件:"lianxi"
    ID:fd0000000000 文件名长度:255     类型:xfs
块大小:4096       基本块大小:4096
    块:总计:4452864    空闲:4049957    可用:4049957
Inodes: 总计:8910848    空闲:8875109

-t        以简洁的方式输出信息

[root@localhost ~]# stat lianxi -t
lianxi 121 0 41ed 0 0 fd00 51139261 6 0 0 1638079730 1638079729 1638079729 0 4096 unconfined_u:object_r:admin_home_t:s0

一些字段的含义

[root@localhost ~]# stat lianxi
  文件:"lianxi"
  大小:121       	块:0          IO 块:4096   目录
设备:fd00h/64768d	Inode:51139261    硬链接:6
权限:(0755/drwxr-xr-x)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2021-11-28 14:08:50.450981770 +0800
最近更改:2021-11-28 14:08:49.422975899 +0800
最近改动:2021-11-28 14:08:49.422975899 +0800
创建时间:-

timedatectl

是用于控制系统时间和日期,可以用来查询和更改系统时间,同时用于设定和修改时区信息

用法

locale

是Linux中多语言环境设置接口

通过它来设置程序运行时的不同语言环境,它由ANSIC提供支持

命名规范

<语言>_<地区>.<字符集编码>

语法格式

locale [参数]

常用参数

例:

显示默认字符集

[root@localhost ~]# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

查看可用语言环境

[root@localhost ~]# locale -a
aa_DJ
aa_DJ.iso88591
aa_DJ.utf8
aa_ER
aa_ER@saaho
aa_ER.utf8
aa_ER.utf8@saaho
aa_ET
aa_ET.utf8
af_ZA
af_ZA.iso88591
af_ZA.utf8
am_ET
am_ET.utf8
an_ES
an_ES.iso885915
an_ES.utf8
ar_AE
ar_AE.iso88596
ar_AE.utf8
ar_BH
ar_BH.iso88596
ar_BH.utf8
ar_DZ
ar_DZ.iso88596
ar_DZ.utf8
........

cp

用于复制文件或目录

语法格式

参数

当复制文件或目录在目的地存在时,会给与提醒,是因为定义了别名

[root@localhost ~]# alias cp
alias cp='cp -i'

解决方法:

例:

复制单个文件

[root@localhost lianxi]# cp  songyuxiao.txt  changsha
                              源文件           目的地
                              source           destination

复制多个文件

[root@localhost lianxi]# cp  feng.txt  songyuxiao.txt  weijunlin.txt   hunan
                               前面的3个文件都是源文件                   目的地

使用通配符

[root@localhost lianxi]# cp  *.txt  hunan  将所有的.txt结尾的文件复制到hunan

复制时并改名

#将songyuxiao.txt复制到hunan目录,改名为syx.txt
[root@localhost lianxi]# cp songyuxiao.txt  hunan/syx.txt
[root@localhost lianxi]# cp feng.txt  hunan/fengdeyong.txt

与绝对路径的使用

[root@localhost lianxi]# cp  /etc/passwd   .   将/etc/passwd 文件复制到当前目录下
[root@localhost lianxi]# cp  /etc/passwd  /lianxi/hunan

文件夹的复制   --》加  -r

[root@localhost lianxi]# cp -r hunan hubei  guangdong
                               源文件夹     目的地

mv(操作与cp相似)

用来移动文件和目录的位置的或者重命名

 1.移动文件或者文件夹   --》后面接的文件夹如果存在就是移动

 2.重命名  --》后面接的文件如果不存在就是重命名

语法

参数

例:

移动多个文件

[root@localhost lianxi]# mv gui changsha hubei guangdong/  china
                              源文件                       目的地

使用通配符

[root@localhost lianxi]# mv *.txt  china  将.txt结尾的文件复制到china目录下

dirname

dirname  + 路径   得到绝对路径的文件夹的路径

basename  

basename  + 路径  得到最后的文件的名字

相关文章