RHCSA 练习5

目录

1.tar命令的使用

2.sftp命令的使用

3.创建环境变量

4.alias命令的使用

5.查看最近使用的10条历史命令

6.在一行上执行两个命令,打印123和从root切换到普通用户

7.引号的使用举例: 无引号,单引号,双引号,反引号,$()


1.tar命令的使用

 使用tar命令对文件进行打包压缩与解压缩:

# 打包压缩
[root@server ~]# tar -cvf _file.tar ?file
afile
bfile
zfile
[root@server ~]# ll _file.tar 
-rw-r--r--. 1 root root 10240 Jul 19 22:46 _file.tar
# 解压缩
[root@server ~]# tar -xvf _file.tar
afile
bfile
zfile

 使用gzip方式对文件进行压缩,并指定压缩名为 tar_gzip.tar.gz

[root@server ~]# tar -cvzf tar_gzip.tar.gz ?file
afile
bfile
zfile
[root@server ~]# ll tar_gzip.tar.gz 
-rw-r--r--. 1 root root 174 Jul 19 22:52 tar_gzip.tar.gz

 使用bzip2方式对文件夹进行压缩,并指定压缩名为 tar_bzip2.tar.bz2

[root@server ~]# tar -cvjf tar_bzip2.tar.bz2 ?file
afile
bfile
zfile
[root@server ~]# ll tar_bzip2.tar.bz2 
-rw-r--r--. 1 root root 183 Jul 19 22:54 tar_bzip2.tar.bz2

 使用xz方式对文件进行压缩,并指定压缩名为 tar_xz.tar.xz

[root@server ~]# tar -cvJf tar_xz.tar.xz ?file
afile
bfile
zfile
[root@server ~]# ll tar_xz.tar.xz 
-rw-r--r--. 1 root root 220 Jul 19 22:54 tar_xz.tar.xz

 新建文件file1.txt,file2.txt,file3.txt,对文件file1.txt和file2.txt,进行压缩(使用gzip方式),排除 file3.txt(即不对file3进行压缩),并指定压缩名为tar_file.tar.gz

[root@server ~]# touch file{1..3}.txt
[root@server ~]# ls file1.txt file2.txt file3.txt 
file1.txt  file2.txt  file3.txt
[root@server ~]# tar -cvzf tar_file.tar.gz --exclude=./file3.txt ./file?.txt
./file1.txt
./file2.txt
[root@server ~]# ls tar_file.tar.gz 
tar_file.tar.gz

 新建文件file4.txt,将file4.txt添加到tar_file.tar.gz中

[root@server ~]# touch file4.txt
[root@server ~]# gunzip tar_file.tar.gz 
[root@server ~]# tar -rf tar_file.tar file4.txt 
[root@server ~]# gzip tar_file.tar

 查看压缩包tar_file.tar.gz有哪些文件及目录(不解压,只查看)

[root@server ~]# tar -tf tar_file.tar.gz 
file1.txt
file2.txt
file4.txt

 解压tar_gzip.tar.gz到指定目录tar_test(没有这个目录就创建)

[root@server ~]# mkdir tar_test
[root@server ~]# tar -xf tar_gzip.tar.gz -C tar_test/
[root@server ~]# ls tar_test/
afile  bfile  zfile

 解压tar_xz.tar.xz

[root@server ~]# tar -xf tar_xz.tar.xz 

2.sftp命令的使用

 在Linux上的/root目录创建一个Linux.txt,在windows上创建windows.txt

[root@server ~]# touch Linux.txt

 通过sftp的 get 和 put 命令,将windows上的windows.txt推送到 linux上

[root@server ~]# ls windows.txt 
windows.txt

 通过sftp的 get和put命令,将linux上的linux.txt推送到windows上

3.创建环境变量

   创建普通变量local_data=1并访问

[root@server ~]# local_data=1
[root@server ~]# echo $local_data
1

  创建环境变量ROOT_DATA=root, 只有root用户可以访问到

[root@server ~]# vim .bashrc     # 配置ROOT_DATA环境变量
# .bashrc
  
# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
ROOT_DATA=root
~                                                                            
~               
[root@server ~]# source .bashrc    # 刷新.bashrc
[root@server ~]# echo $ROOT_DATA
root

  创建环境变量USER_DATA=user, 只有普通用户可以访问到

[root@server ~]# su - redhat        
[redhat@server ~]$ vim .bashrc        # 配置USER_DATA环境变量
# .bashrc
  
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific environment
if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]
then
    PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH

# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=

# User specific aliases and functions
USER_DATA=user
~         
[redhat@server ~]$ source .bashrc 
[redhat@server ~]$ echo $USER_DATA
user

  创建环境变量DATA=all, root用户和普通用户都可以访问到

[root@server ~]# vim /etc/bashrc          # 配置USER_DATA环境变量
 ...
    done

    unset i
    unset -f pathmunge
  fi

fi
# vim:ts=4:sw=4
DATA=all

[root@server ~]# source /etc/bashrc 
[root@server ~]# echo $DATA
all
[root@server ~]# su - redhat
[redhat@server ~]$ echo $DATA
all

4.alias命令的使用

  创建3个文件test1.txt, test2.txt, test3.txt

[root@server ~]# touch test{1..3}.txt
[root@server ~]# ls test{1..3}.txt
test1.txt  test2.txt  test3.txt

  使用find查找test1.txt,test2.txt, test3.txt

[root@server ~]# find -name "test[123].txt"
./test3.txt
./test1.txt
./test2.txt

  使用别名: 将上边命令命名为myfind

[root@server ~]# alias myfind='find -name "test[123].txt"'
[root@server ~]# myfind
./test3.txt
./test1.txt
./test2.txt

  取消别名

[root@server ~]# unalias myfind
[root@server ~]# myfind
bash: myfind: command not found...

5.查看最近使用的10条历史命令

[root@server ~]# history 10
  426  find -name "test{1,2,3}.txt"
  427  alias myfind="find -name "test{1,2,3}.txt""
  428  myfind
  429  alias myfind="find -name "test[123].txt""
  430  myfind
  431  alias myfind='find -name "test[123].txt"'
  432  myfind
  433  unalias myfind
  434  myfind
  435  history 10


6.在一行上执行两个命令,打印123和从root切换到普通用户

[root@server ~]# echo 123;su - redhat
123
[redhat@server ~]$ 


7.引号的使用举例: 无引号,单引号,双引号,反引号,$()

# 无引号
[root@server ~]# num=1
[root@server ~]# echo $num
1

[root@server ~]# test=this is a test
bash: is: command not found...
# 单引号
[root@server ~]# test='this is a test'
[root@server ~]# echo $test
this is a test

[root@server ~]# echo 'num = $num'
num = $num
# 双引号
[root@server ~]# echo "num = $num"
num = 1
# 反引号
[root@server ~]# cmd=`pwd`
[root@server ~]# echo $cmd
/root
# $()
[root@server ~]# cmd=$(date)
[root@server ~]# echo $cmd        # 与反引号作用相同
Wed Jul 20 20:11:07 CST 2022

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

俗人不俗鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值