linux运维基础命令

linux 运维基础命令集

执行命令的顺序: 别名>内部命令>外部命令

Linux中用type +命令 可以查看命令的类型
enable +命令 是启用内部命令
enable +n+命令 是用内部命令
enable 是查看禁用的内部命令

定义别名:alias name=命令 输入name执行的是命令

alias NAME='VALUE'

撤销别名: unalias
要想把别名永久保存,要定义在配置文件中
:~/.bashrc 只对当前的用户
:/etc/bashrc 对所有的用户都有效

[18:55:05 root@zhao[ ~]#echo "alias rm='rm -r'">> .bashrc
把rm的别名rm -r写进.bashrc

如果别名和原命令同名需要使用原命令要在原命令的前边放上‘\’

[18:59:31 root@zhao[ ~]#\ls
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Pictures  Templates
Desktop		 Downloads  Music		  Public    Videos

在编辑配置之后,不会立即生效,需要刷新一下“source”

date 时间的显示(软件的时间);

clock显示的硬件的时间。
cal +年 显示那一年的日历

[19:00:35 root@zhao[ ~]#date
Sat Dec 14 19:00:38 CST 2019
[19:00:38 root@zhao[ ~]#clock
2019-12-14 19:00:33.694641+08:00
[19:00:47 root@zhao[ ~]#cal
    December 2019   
Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31     

关机:halt;poweroff
重启:reboot -f 强制 不调用
shutdown -p切断电源
关机或者重启:shutdown

nano 文本编辑,初学者

输出信息:echo [neE] [字符串]
选项-E (默认)不支持\结束功能
-n 不自动换行
-e 启用\字符的解释功能

显示变量

echo +\a 发出警报声
echo +\b 退格键
echo +\c 最后不加上换行符号
echo +\e escape,相当于\033
echo +\n 换行且光标移至行首
echo +\r 回车,即光标移至行首,但不换行
echo +\t 插入tab
echo +\ 插入\字符
echo +\Onnn 插入nnn(八进制)所代表的ASCLL字符
echo +HH 插入HH(十六进制) 所代表的ASCLL字符

获得帮助

  • whatis
[19:18:17 root@zhao[ ~]#whatis date
date (1)             - print or set the system date and time
date (1p)            - write the date and time
  • command --help
  • man and info
    查看man手册页:man [章节] keyword
  • /usr/share/doc/
  • Red Hat doncumentation
  • 其他网站和搜索

查看命令的帮助

内部命令:help +COMMAND;man bash
外部命令和软件:

  • COMMAND --help or COMMANd
  • 使用手册(manual){man COMMAND}
  • 信息页 info COMMAND
  • 程序员自身的帮助文档README INSTALL ChangeLog
  • 程序官方文档 官方站点:Documentataion
  • 发新版的官方文档
  • (7) Gooldle
    (man帮助要比help帮助写的详细)

### 显示当前工作目录
pwd -P显示真实的物理路径

[19:25:03 root@zhao[ etc]#pwd -P
/etc

pwd -显示链接路径(默认)

更改目录

  • 切换至父目录:cd …
  • 切换至当前用户主目录:cd
  • 切换至以前的工作目录:cd -

列出目录内容
ls 命令可以列出当前目录的内容或者指定目录
常见选项:

  • -a
[19:31:38 root@zhao[ /]#ls -a
.    bin   data  dev  home  lib64  media  opt   root  sbin  sys  usr
..  boot  date  etc  lib   log    mnt    proc  run   srv   tmp  var
  • -l 显示额外的信息
[19:31:41 root@zhao[ /]#ls -l
total 32
lrwxrwxrwx.   1 root root    7 May 11  2019 bin -> usr/bin
dr-xr-xr-x.   6 root root 4096 Dec 14 15:09 boot
drwxr-xr-x.   3 root root   58 Dec 14 17:09 data
-rw-r--r--.   1 root root 2481 Dec 14 16:07 date
drwxr-xr-x.  19 root root 3300 Dec 14 08:14 dev
drwxr-xr-x. 133 root root 8192 Dec 14 17:13 etc
drwxr-xr-x.   3 root root   18 Dec 13 19:02 home
lrwxrwxrwx.   1 root root    7 May 11  2019 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 May 11  2019 lib64 -> usr/lib64
  • -R 目录递归
  • -ld 目录和符号链接信息
  • -1 文件分行显示
  • -S 按从大到小排序
  • -t 按mtime排序
  • -u 配合-t选项,显示并按atime从新到旧排序
  • -U 按目录存放顺序显示
  • -X 按文件后缀排序

查看文件状态 stat

文件相关的信息: metadata 、data

  1. access time 访问时间,atime,读取文件内容
  2. modify time 修改时间,mtime,改变文件内容(数据)
  3. change time 改变时间,ctime,元数据发生改变
[19:32:39 root@zhao[ /]#stat /var
  File: /var
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: 802h/2050d	Inode: 133         Links: 21
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:var_t:s0
Access: 2019-12-13 20:48:50.227526421 +0800
Modify: 2019-12-11 11:02:56.117210739 +0800
Change: 2019-12-14 08:14:04.143134195 +0800
 Birth: -

确定文件内容

file [options]<filename

  • -b 列出文件辨识结果时,不显示文件名称
[19:39:42 root@zhao[ /]#file -b /var
directory
  • -f filelist 列出文件filelist中文件名的文件类型
  • -F 使用指定分隔符号替换输出文件名后默认的”:”分隔符
  • -L 查看对应软链接对应文件的文件类型
  • –help 显示命令在线帮助

通配符应用

  1. 显示/etc目录下所有以l开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录
[19:57:31 root@zhao[ etc]#ls -a l*[[:digit:]]*[[:lower:]]
ladsa22ad.txt
  1. 显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录
[19:57:42 root@zhao[ etc]#ls -a [[:digit:]]*[^[:digit:]]
5qwed
  1. 显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录
[20:02:05 root@zhao[ etc]#ls -a [^[:alpha:]]*[[:alnum:]]
55asda.txt  5qwed
  1. 显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录
[20:02:08 root@zhao[ etc]#ls -a rc[^[0-6]*
rcdjsk5ads  rc.local

rc.d:
.  ..  init.d  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d  rc.local
  1. 显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
[20:03:02 root@zhao[ etc]#ls -a [mnrp]*.conf
man_db.conf  mtools.conf    nsswitch.conf  radvd.conf        rsyslog.conf
masdk.conf   nfs.conf       pbm2ppa.conf   request-key.conf
mke2fs.conf  nfsmount.conf  pnm2ppa.conf   resolv.conf
  1. 只显示/root下的隐藏文件和目录
[20:05:04 root@zhao[ ~]#ls -ad .*
.              .bash_logout   .cache   .dbus          .local   .viminfo
..             .bash_profile  .config  .esd_auth      .pki     .Xauthority
.bash_history  .bashrc        .cshrc   .ICEauthority  .tcshrc
  1. 只显示/etc下的非隐藏目录
[20:05:53 root@zhao[ etc]#ls
55asda.txt                  hostname                  protocols
5qwed                       hosts                     pulse
adjtime                     hosts.allow               qemu-ga
aliases                     hosts.deny                qemu-kvm
alsa                        hp                        radvd.conf
alternatives                idmapd.conf               ras
anacrontab                  init.d                    rc0.d
asound.conf                 inittab                   rc1.d
at.deny                     inputrc                   rc2.d
audit                       insights-client           rc3.d
authselect                  iproute2                  rc4.d
avahi                       iscsi                     rc5.d
bash_completion.d           issue                     rc5djskads
bashrc                      issue.d                   rc6.d
bindresvport.blacklist      issue.net                 rc.d
binfmt.d                    kdump.conf                rcdjsk5ads
bluetooth                   kernel                    rc.local
brlapi.key                  krb5.conf                 rdma
brltty                      krb5.conf.d               redhat-access-insights
brltty.conf                 ksmtuned.conf             redhat-release
centos-release              ladsa22ad.txt             request-key.conf
centos-release-upstream     ld.so.cache               request-key.d
chkconfig.d                 ld.so.conf                resolv.conf
chrony.conf                 ld.so.conf.d              rhsm
chrony.keys                 libaudit.conf             rpc
cifs-utils                  libblockdev               rpm
cni                         libibverbs.d              rsyslog.conf
cockpit                     libnl                     rsyslog.d
containers                  libpaper.d                rwtab.d
cron.d                      libreport                 samba
cron.daily                  libuser.conf              sane.d
cron.deny                   libvirt                   sasl2
cron.hourly                 locale.conf               security
cron.monthly                localtime                 selinux
crontab                     login.defs                services
cron.weekly                 logrotate.conf            sestatus.conf
crypto-policies             logrotate.d               setroubleshoot
crypttab                    lsm                       sgml
csh.cshrc                   lvm                       shadow
csh.login                   machine-id                shadow-
cups                        magic                     shells
cupshelpers                 mailcap                   skel
dbus-1                      makedumpfile.conf.sample  smartmontools
dconf                       man_db.conf               sos.conf
default                     masdk.conf                speech-dispatcher
depmod.d                    mcelog                    ssh
dhcp                        microcode_ctl             ssl
DIR_COLORS                  mime.types                sssd
DIR_COLORS.256color         mke2fs.conf               subgid
DIR_COLORS.lightbgcolor     modprobe.d                subgid-
dleyna-server-service.conf  modules-load.d            subuid
dnf                         motd                      subuid-
dnsmasq.conf                motd.d                    sudo.conf
dnsmasq.d                   mtab                      sudoers
dracut.conf                 mtools.conf               sudoers.d
dracut.conf.d               multipath                 sudo-ldap.conf
egl                         nanorc                    sysconfig
enscript.cfg                ndctl                     sysctl.conf
environment                 netconfig                 sysctl.d
ethertypes                  NetworkManager            systemd
exports                     networks                  system-release
exports.d                   nfs.conf                  system-release-cpe
favicon.png                 nfsmount.conf             tcsd.conf
filesystems                 nftables                  terminfo
firefox                     nsswitch.conf             tmpfiles.d
firewalld                   nsswitch.conf.bak         trusted-key.key
flatpak                     openldap                  tuned
fonts                       opt                       udev
fprintd.conf                os-release                udisks2
fstab                       ostree                    unbound
fuse.conf                   PackageKit                updatedb.conf
fwupd                       pam.d                     UPower
gconf                       papersize                 usb_modeswitch.conf
gcrypt                      passwd                    vconsole.conf
gdm                         passwd-                   vimrc
geoclue                     pbm2ppa.conf              virc
glvnd                       pinforc                   vmware-tools
gnupg                       pipewire                  wgetrc
GREP_COLORS                 pkcs11                    wpa_supplicant
groff                       pki                       X11
group                       plymouth                  xattr.conf
group-                      pm                        xdg
grub2.cfg                   pnm2ppa.conf              xinetd.d
grub.d                      polkit-1                  xml
gshadow                     popt.d                    yum
gshadow-                    prelink.conf.d            yum.conf
gss                         printcap                  yum.repos.d
gssproxy                    profile
host.conf                   profile.d

创建空文件和刷新时间

touch [OPTION]… FILE…
在root目录下建一个以两天前日期为名的文件

[20:10:11 root@zhao[ ~]#touch `date -d "-2 day" +%F_%T`.txt
[20:10:14 root@zhao[ ~]#ls
2019-12-12_20:10:14.txt  Desktop    Downloads             Music     Public     Videos
anaconda-ks.cfg          Documents  initial-setup-ks.cfg  Pictures  Templates

复制文件和目录

cp用法

  1. cp [OPTION]… [-T] SOURCE DEST
  2. cp [OPTION]… SOURCE… DIRECTORY
  3. cp [OPTION]… -t DIRECTORY SOURCE…

cp -a /etc/ /data/zhao’date +%F’ 复制过程+改名

[20:10:15 root@zhao[ ~]#cp -a /etc/ /data/zhao`date +%F`.txt
[20:25:41 root@zhao[ ~]#cd /data
[20:25:57 root@zhao[ data]#ls
is.txt  passwd  zhao  zhao2019-12-14.txt

cp 常用选项的做法

  • i 覆盖前提示
  • -n 不覆盖,注意两者顺序
  • -r, -R 递归复制目录及内部的所有内容
  • -a 归档,相当于-dR --preserv=all
  • -d --no-dereference --preserv=links 不复制原文件,只复制链接名
  • –preserv[=ATTR_LIST]
    mode: 权限
    ownership: 属主属组
    timestamp:
    links
    xattr
    context
    all
  • -p 等同–preserv=mode,ownership,timestamp
  • -v --verbose
  • -f --force
  • -u --update 只复制源比目标更新文件或目标不存在的文件
  • -b 目标存在,覆盖前先备份,形式为 filename~
  • –backup=numbered 目标存在,覆盖前先备份加数字后缀

移动和重命名文件

mv的用法:

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
  • -i 交互式

  • -f 强制

  • -b 目标存在,覆盖前先备份

    mv Downloads /data/download 移动+改名

    [20:54:06 root@zhao[ ~]#mv Downloads /data/download
    [20:54:10 root@zhao[ ~]#cd /data
    [20:54:21 root@zhao[ data]#ls
    download  is.txt  passwd  zhao  zhao2019-12-14.txt
    

    同一分区中移动数据速度很快(数据位置没有变化) 不同分区移动数据相对很慢(数据移动位置)

删除文件

rm的用法

rm [OPTION]... FILE...

常用选项

  • -i 交互式
  • -f 强制删除
  • -r 递归
  • –no-preserve-root 删除/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值