云社区 博客 博客详情

Linux04_基本命令

不染(鲸鱼) 发表于 2020-06-23 20:20:23 2020-06-23
0
0

【摘要】 env:查看所有环境变量(即全局变量)set:查看当前终端里的所有变量(包括全局变量和自定义变量)grep:Linux下的一个文本过滤命令----根据字符串做过滤,匹配的行会显示出来,不匹配的不显示[root@sc-changsha~]#set|grep"HOSTNAME"HOSTNAME=sc-changshaPROMPT_COMMAND='printf"\033]0;%s@...

env:查看所有环境变量(即全局变量)
set:查看当前终端里的所有变量(包括全局变量和自定义变量)
grep:Linux下的一个文本过滤命令----根据字符串做过滤,匹配的行会显示出来,不匹配的不显示

[root@sc-changsha ~]# set | grep  "HOSTNAME"
HOSTNAME=sc-changsha
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
[root@sc-changsha ~]#

Linux系统:多用户多任务的操作系统----很多用户都能登录进来,各做各的事情,每件事就是一个任务

新建用户:useradd 用户名
设置密码:passwd 密码
退出用户:exit
切换用户:su - 用户名
查看当前默认的shell版本: echo $SHELL
查看有哪些shell:cat \etc\shells

条件语句:
if 条件
then
命令1
else
命令2
fi

条件:可以是执行的一条linux命令,命令执行成功,条件为真(成立),命令执行失败,条件为假(不成立)。条件成立就执行命令1,条件不成立就执行命令2。fi关闭

判断目录(文件夹)是否存在:
[root@hxy lianxi]# [ -d cali ] 判断当前文件夹里是否有cali这个文件夹 $? 为0 说明存在,非0表示不存在
-d  directory 目录=文件夹
-f file 文件

#! /bin/usr/bash 声明用的shell是bash
[root@pinxixi lianxi]# bash create_dir100.sh 执行脚本-----create_dir100.sh指脚本名

#新建100个文件夹
(1)
for i in {1...100}
do
mkdir feng$i
done

(2)mkdir 文件名{1...100}-----不能判断

rm -rf 文件名-----删除文件或文件夹的命令
[root@pinxixi sc-hunan]# rm -rf xie 表示删除sc-hunan里所有xie开头的文件-----可用作批量删除 rm即remove
-f --force强制,忽视不存在文件,不提醒
-r -R -recursive删除文件夹里的子文件夹或文件---递归删除--每个文件夹里都做相同的删除操作
-rf 删除操作的绝佳配合,要谨慎删除,删除不会经过回收站,必须要借助备份或恢复软件来恢复数据
PS:不要进行的操作:会删除整个Linux系统里的文件和文件夹--毁灭整个系统:
rm -rf /
rm -rf /

rm -rf
rm -rf feng? 删除当前目录下以feng开头的名字,后面接任意一个字母的文件或文件夹
rm -rf feng?? 删除当前目录下以feng开头的名字,后面接任意两个字母的文件或文件夹
rm -rf feng
删除当前目录下所有以feng开头的文件
rm -rf *.txt 删除所有的以.txt结尾的文件

通配符

  • 代表0或任意个字符
    ? 代表一个任意字符
    #创建空文件---一般是空的文件夹
    touch sc.txt

快捷辅助键:
tab键:1.自动补齐文件夹或文件的名字(按一下,如果一下没出 来,按两下)
2.补齐命令
加快打字速度,提醒功能
CTRL+C 强行终止某个程序的运行
[root@localhost ~]# cd /etc^C
CTRL+L 清屏,相当于clear命令
CTRL+K 删除从光标到行末所有字符
CTRL+U 删除从光标处到行首的字符
上下方向键 可以调出之前输入的命令----加快速度

[root@localhost ~]# history 查看使用过的历史命令
1 ip add
2 echo $PS1
3 echo $PS2
4 touch sc.txt
5 ls
6 ls /etc
7 ls
8 [ -f sc.txt ]
9 echo $?
10 mkdir schan
11 ls
12 cat schan/
13 mk
14 history
[root@localhost ~]# !10---表示执行第10条历史命令
mkdir schan
[root@localhost ~]# !mk---表示执行最近使用的以mk开头的命令,即第13条历史命令(!后接string)

ls -a会显示.和..隐藏的文件(-a是选项,默认情况下,当前目录就是参数)
ls -A不会显示.和..
ls -d:显示目录本身的属性
ls -t: 按文件修改时间进行排序
ls -r :将目录的内容清单以英文字母顺序的逆序显示
ls -h:以更易读的字节单位(K、M等)显示信息
ls -R:递归显示内容
cd - 上一次所在的工作目录(相当于遥控器上的返回键)
cd ~用户名 返回到某用户的家目录
PS:普通用户没有权限进入其他用户的家目录,root用户可以进入任何用户的家目录

[root@localhost ~]# ls -l
总用量 8
-rw-------. 1 root root 1381 6月 17 09:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 1536 6月 17 09:42 initial-setup-ks.cfg
drwxr-xr-x. 2 root root 6 6月 17 14:47 schan
-rw-r--r--. 1 root root 0 6月 17 11:22 sc.txt
最前面的-表示文件类型为普通文件
d表示文件类型为目录(文件夹)
rwxr-xr-x代表权限 r表示读 w表示写 x表示执行(execute)
rwx 属主(用户)
r-x属组(group)
r-x其他人(others)
. 表示有sellinux的权限设置---selinux时保护Linux系统安全的软件
2和1表示文件的链接数
6和0代表文件大小
第一个root表示用户(属主)owner
第二个root表示小组

以下命令的效果一样
[root@hxy ~]# ls -al
[root@hxy ~]# ls -la
[root@hxy ~]# ls -l -a
[root@hxy boot]# ls -lh

[root@localhost ~]# stat schan 查看文件的状态
文件:schan
大小:6 块:0 IO 块:4096 目录
设备:fd00h/64768d Inode:16803878 硬链接:2
权限:(0755/drwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2020-06-17 14:47:55.314593636 +0800
最近更改:2020-06-17 14:47:55.314593636 +0800
最近改动:2020-06-17 14:47:55.314593636 +0800
创建时间:-
[root@localhost ~]# LANG=en_US.UTF8将显示数据语言切换成英文
LANG是语言编码,是环境变量
en指english
US即美国
UTF8是万国码
[root@localhost ~]# stat schan
File: schan
Size: 6 Blocks: 0 IO Block: 4096 directory
Device: fd00h/64768d Inode: 16803878 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2020-06-17 14:47:55.314593636 +0800
Modify: 2020-06-17 14:47:55.314593636 +0800
Change: 2020-06-17 14:47:55.314593636 +0800
Birth: -

+0800指时区:东八区
Access time访问时间---看里面的内容cat vi---atime
Modify time修改时间---修改文件里的内容vi---mtime
Change time更改时间---修改文件的属性,修改时间,大小,拥有者和组,权限---ctime

为什么要使用别名
1.方便,简单 --》快捷,不想打很多命令

[root@localhost ~]# alias 查看Linux系统里的别名
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='(alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot'
alias xzegrep='xzegrep --color=auto'
alias xzfgrep='xzfgrep --color=auto'
alias xzgrep='xzgrep --color=auto'
alias zegrep='zegrep --color=auto'
alias zfgrep='zfgrep --color=auto'
alias zgrep='zgrep --color=auto'
[root@localhost ~]alias c = clear定义c是clear的别名---属于临时定义

unalias取消别名
1.临时定义:旨在当前终端有效
2.永久定义:一切皆文件
PS:定义的别名不要和Linux里的已有命令一样导致冲突
先临时定义,再修改文件,这样可以保障哪里都可以使用这个别名

[root@localhost ~]vi ~/.bashrc
alias c='clear' 添加
[root@localhost ~] source ~/.bashrc 执行脚本文件,让刚刚修改的别名生效

文章来源: blog.51cto.com,作者:Andrea17,版权归原作者所有,如需转载,请联系作者。

原文链接:https://blog.51cto.com/13603998/2506524

登录后可下载附件,请登录或者注册

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:huaweicloud.bbs@huawei.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
评论文章 //点赞 收藏 0
点赞
分享文章到微博
分享文章到朋友圈

上一篇:TechTarget:超融合云基础概念解析

下一篇:[5+1]里氏替换原则(一)

评论 (0)


登录后可评论,请 登录注册

评论