Linux之Xshell工具使用

news2024/9/27 17:37:07

shell简介

Xshell是一个远程工具,可以远程连接linux系统 ,SSH,远程管理 Xshell来远程访问Linux系统的终端 。

shell的英文含义是“壳”;

它是相对于内核来说的,因为它是建立在内核的基础上,面向于用户的一种表现形式,比如我们看到一个球,见到的是它的壳,而非核。

Linux中的shell,是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息;

由于Linux不同于Windows,Linux是内核与界面分离的,它可以脱离图形界面而单独运行,同样也可以在内核的基础上运行图形化的桌面。

这样,在Linux系统中,就出现了两种shell表现形式,一种是在无图形界面下的终端运行环境下的shell,另一种是桌面上运行的类似Windows 的MS-DOS运行窗口,前者我们一般习惯性地简称为终端,后者一般直接称为shell。

使用shell可以实现:

1.文件管理: 创建, 移动, 赋值, 删除, 编辑...

2.权限管理: 不同用户的不同权限管理.

3.用户管理: 创建以及删除用户.

4.磁盘管理: 磁盘挂载.

5.网络管理: IP的配置.

6.软件管理: 下载及运行等等.

通过对虚拟机的快照设置可以快速回到某一步

shell提示符

[root@xh ~]#
# root:当前用户
# @ :没有意义
#xh:主机名
# ~:家目录
# #:表示超级用户
[xh@xh ~]$ :$ 表示普通用户

常见命令:

ls命令

#  命令  选项  参数   三部分组成 选项和参数可以调换
ls:查看当前路径下的文件,以及文件夹
# 如果想把命令写全了就加 -- 不写全就加 -
ls --all = ls -a:查看所有文件,包括隐藏文件,以点开头的都是隐藏文件
ls -a  /temp  
 
ls -l:查看每个组,权限,修改时间
# 以下三个一样
ls -l -a
ls -la
ls -al

命令补全

# 一下或者两下tab建
# 一下的话会直接找到你要用的命令
# 两下,可能会用到的全列出来
 
# ifconfig 在7的版本没有,需要装软件
yum install net-tools -y
yum install net-tools
 
# yum install bash-completion -y   补齐选项  安装完成之后需要重新连接 还是按两下tab键
ls - 两下tab建,所有的选项都会提示出来
 

命令快捷键

Ctrl + a    #光标跳转至正在输入的命令行的首部
Ctrl + e    #光标跳转至正在输入的命令行的尾部
Ctrl + c    #终止前台运行的程序   ##################
Ctrl + d    #在shell中,ctrl-d表示推出当前shell。
Ctrl + z    #将任务暂停,挂至后台
Ctrl + l    #清屏,和clear命令等效。  ##############
Ctrl + k    #删除从光标到行末的所有字符
Ctrl + u    #删除从光标到行首的所有字符
Ctrl + r    #搜索历史命令, 利用关键字,Tab建选中,只能找到最近的一条
Ctrl + w    #按单词或空格进行向前删除
Ctrl + 左右建 #按单词或空格进行向前向后跳
 
#在命令行前加面加 "#" 则该命令不会被执行

!命令

!!://执行上一条命令
!vim://执行历史命令中最近的以 vim 开头的命令,如 !ls,!cat...
!$://上一条命令的最后一个参数,[与 Alt + . 相同(在Xshell中用不了)]
!$:p://打印输出 !$ 的内容
!blah:p://仅打印输出,而不执行
!*://上一条命令的所有参数
!*:p://打印输出 !* 的内容
^blah://删除上一条命令中的 blah
^blah^foo://将上一条命令中的 blah 替换为 foo
^blah^foo^://将上一条命令中所有的 blah 都替换为 foo
 

history历史记录

history查看历史命令
!数字   快速执行数字那一行
!yum    快速执行最近一条yum命令
history -d 70  把历史记录的第70行删除
history -c   清空所有记录(连到人家服务器,操作完了,执行一下)
history -w   可以把 历史记录写到用户家路径的.bash_history文件中
 

设置命令别名

  • 将复杂的难记的命令简单化

  • "alias 别名=命令"

  • "" : 取消特殊意义, 取消了别名的意义: \ls,

  • 取消别名 : "unalias 别名"

 1、设置别名
 alias www='ls /'  只在当前bashshell中生效
 
 2、永久生效(全局,局部),将别名写到环境变量中去
    echo "alias wk='ifconfig'" >> /etc/bashrc
    
 3、取消别名
    which ls //先查看命令的完整路径, 在使用完整路径来运行
    \ls      //反斜杠可以取消特殊意义, 取消ls的别名意义
    unalias  //直接取消别名
 
    如果写到配置文件中,取消的话unalias wk+去配置文件删除
    
 4、内置的别名:在环境变量的配置文件中放着
    alias ls
    
 5、/bin/ls -al /root   # ls 内置了别名
 
 6、命令 --help  # 查看命令该怎么用
    
 7、man 命令  # 也是查看命名的使用方法,按q退出

重启 关机 注销

shutdown -r 10            //10分钟后重启
shutdown -r 0            //立即重启
shutdown -r now            //立即重启
init 6                //立即重启
reboot                //立即重启
 
shutdown -h 10            //10分钟后关机
shutdown -h 0            //立即关机
shutdown -h now            //立即关机
init 0                //立即关机
halt                //立即关机
poweroff            //立即关机.
 
# 注销
1.exit
2.logout
3.Ctrl + d
 
# 取消正在进行的关机或者重启
shutdown -c
 

路径定位

1 . ..  相对路径,. 是当前,..是上一级
 
2 注意:带斜杠和不带斜杠
    cd /usr # 根路径下的usr
    cd usr  # 当前路径下的usr
3 执行当前路径下的某个文件
    ./xx linux
    xx   windows
4 ~当前用户的家路径:root   /root   jack  /home/jack

mkdir

创建目录

 选项:-v 显示详细信息  -p 递归创建目录
 mkdir dir1
 mkdir /home/od/dir1 /home/od/dir2
 mkdir -v /home/od/{dir3,dir4}  
 mkdir -pv /home/od/dir5/dir6
 mkdir -pv /home/{od/{diu,but},boy}
 mkdir /dir1    在根目录下创建dir1
 mkdir ./dir1    在当前目录下创建dir1
 mkdir ../dir1    在上一个目录下创建dir1

touch

新建文件

touch file                    #无则创建,有则修改时间
touch file2 file3
touch /home/od/file4 file5
touch file{a,b,c}             #{}集合,等价 touch a b c
touch file{1..10}
touch file{a..z}

rm

删除文件

选项:-r: 递归 -f: 强制删除 -v: 详细过程
rm  file.txt      #删除文件, 默认rm存在alias别名,rm -i所以会提醒是否删除文件
rm -f file.txt    #删除文件, 不提醒
 
rm -r dir/        #递归删除目录,会提示
rm -rf dir/       #强制删除目录,不提醒(慎用)
 
1.rm删除示例
mkdir /home/dir10
touch /home/dir10/{file2,file3,.file4}
rm -f /home/dir10/  //不包括隐藏文件 
ls /home/dir10/ -a
. .. .file4
 
2.rm删除示例2
touch file{1..10}
touch {1..10}.pdf
rm -rf file 
rm -rf .pdf
rm -f file*
rm -f *.txt

rmdir

删除空目录,如果删除的目录有其他文件或者子目录存在,就会删除不成功

rmdir [参数] 目录名
参数 -p 删除父目录,要求父目录没有其他目录存在
    -v 显示命令的详细执行过程

mv

移动文件

mv file file1             #原地移动算改名
mv file1 /tmp/            #移动文件至tmp目录:不一样mv file1 tmp 
mv /tmp/file1 ./          #移动tmp目录的文件至当前目录
mv dir/ /tmp/             #移动目录至/tmp目录下
 
touch file{1..3}
mv file1 file2 file3 /opt/    #移动多个文件或至同一个目录
 
mkdir dir{1..3}
mv dir1/ dir2/ dir3/ /opt     #移动多个目录至同一个目录

cp

复制文件

选项: -v:详细显示命令执行的操作 -r: 递归处理目录与子目录 -p: 保留源文件或目录的属性
cp file /tmp/file_copy
cp name /tmp/name1         #修改名称
cp file /tmp/             #不修改名称
cp -p file /tmp/file_p    #-p保持原文件或目录的属性
cp -r  /etc/ /tmp/        #复制目录需要使用-r参数, 递归复制
cp -rv /etc/hosts /etc/hostname /tmp  #拷贝多个文件至一个目录
cp -rv /etc/{hosts,hosts.bak}
cp -rv /etc/hosts{,-org}

cd

切换命令

cd    切换到家目录
cd ./    当前路径
cd ../    上级路径
cd -    切换到上次工作路径
cd ~    切换到root下的家目录
pwd    (print working directory)打印当前工作路径

查找命令

查看

tree:树状形式显示
       需要安装:yum install tree
       tree /home/ 
    
cat :查看文本内容
      cat >> test2.txt <<EOF
      > ads
      > adf
      > EOF
 
less,more:文本查看,分页
      less /etc/services
      more只支持向前浏览,less命令允许向前或向后浏览文件
      less [选项] 文件名
      可以使用/ 查找 n向下 N向上查找
      less打开文件:ctrl+b:下翻页       ctrl+f:上翻页
      Page Up 向上翻页,Page Down 向下翻页
 
head
    head -n    文件名 (不加默认开头十行)
    head -n1 /etc/services :查看该文件第一行
    ps aux | head -n5 :查看前5个进程
    head -n -3 3.txt   #-3 不显示最后3行
    head -n +3 3.txt   #就只显示前三行
    
tail
    tail -n    文件名 (不加默认结尾十行)
    tail -f    文件名 实时跟踪最后十行
    tail -f /var/log/messages :动态查看文件变化
     tail -n -3 3.txt   #-3 只显示最后三行
    tail -n +3 3.txt   #从第三行开始
    
grep:查找命令
    -grep "xh" test2.txt   查找文件中有xh的行
    -ps aux | grep ssh    查看sshd进程是否在运行
    “^……”表示以……开头,“……$”表示以……结尾
    “^$”表示空行
 
wget:下载yum install wget
    wget 路径  默认下载在当前路径
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
        
curl:连通性
    可以连百度等 curl www.baidu.com
    django:127.0.0.1:8080端口,先在本地curl一下,看看能不能通,可能是防火墙,阿里云的安全组
    curl -o /home/a.png https:72743-20190.png
 
上传下载 (4g以内)
    yum install lrzsz -y
    rz:上传,选择文件直接上传
    sz:sz 文件路径  可以下载到当前主机
 
which  命令 :找出命令的绝对路径
  去/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/b   in:/root/bin 路径找有没有
                    
whereis命令:找出命令的路径以及文档手册信息
   whereis -b ls  查找ls命令,只找二进制(可执行文件)
    
sort
    sort file.txt  对内容进行排序
    sort -t ":" -k2 file.txt
    sort -t ":" -n -k2 file.txt
    
uniq 去重,连续挨着的才能去,所以要跟sort连用
     sort file2.txt | uniq
cut 
    Im xh, is QQ 3524130451
    cut -d " " -f2,5 file.txt #把字符串按“ ” 分割,取出第2和第5个
    
wc
    wc -l /etc/services 
    ls | wc -l # 统计当前路径下有多少文件和文件夹
    ps aux |grep ssh | wc -l # 统计有多少个ssh相关的进程

du

du -a    all,统计磁盘空间占用时包含的所有文件
du -h    人性化方式
du -s    只统计每个参数所占用空间总的大小(summary),不统计子目录
du -d    打印目录(或文件,带 --all)的总计

文件属性与类型

ls -l
ls -lh  以人性化显示,kb,gb
-:文件类型       
rw-r--r--.:权限 
1:硬链接的
root:属主(属于哪个用户)
root:属组(属于哪个组)
43856 :文件大小
Aug 19 11:54 :修改时间
a.png:文件名字
 
权限
r:可读权限 数字表示 4
w:可写权限 数字表示 2
x:可执行权限 数字表示 1
 
文件类型:
字符设备(c)    character,所有输入输出的设备 终端 /dev/tty1, /dev/zero
块设备(b)    block,所有存储设备称之为块设备文件,硬盘 /dev/sda1, /dev/sda2
软连接文件(l)    类似与windows下的快捷方式
目录文件(d)    相当于windows下的的文件夹
普通文件(f或-)    类似windows下的记事本、word等,可以使用相关命令进行编辑,查看文件内容
管道文件(p)    pipe,管道文件
套接字文件(s)    socket,套接字文件
 
 
通过file来查看详细的类型
  file a.txt 
  file /bin/ls
        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/354318.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Eclipse下Maven的集成

Eclipse下Maven的集成 2.1指定本地maven环境 参考&#xff1a;Eclipse的Maven创建_叶书文的博客-CSDN博客_eclipse创建maven项目 指定用本地maven指定maven仓库设置和地址2.2创建maven项目 1.新建 2.目录设置 3.坐标设置&#xff08;随便写就行&#xff09; 4.目录结构 2.3配置…

事件驱动型架构

事件驱动型架构是一种软件设计模式&#xff0c;其中微服务会对状态变化&#xff08;称为“事件”&#xff09;作出反应。事件可以携带状态&#xff08;例如商品价格或收货地址&#xff09;&#xff0c;或者事件也可以是标识符&#xff08;例如&#xff0c;订单送达或发货通知&a…

【看表情包学Linux】进程地址空间 | 区域和页表 | 虚拟地址空间 | 初识写时拷贝

&#x1f923; 爆笑教程 &#x1f449; 《看表情包学Linux》&#x1f448; 猛戳订阅 &#x1f525; &#x1f4ad; 写在前面&#xff1a;本章核心主题为 "进程地址空间"&#xff0c;会通过验证 Linux 进程的地址空间来开头&#xff0c;抛出 "同一个值能有不同内…

【IOS逆向】dumpdecrypted砸壳

【IOS逆向】dumpdecrypted砸壳 前面简单尝试了下frida-trace,发现可以追踪对应pid动态运行时的各种函数&#xff0c;但是对于一个完整APP应用&#xff0c;我们如何得到关键的运行函数&#xff0c;这里就需要对IPA进行一个逆向拆解&#xff0c;找代码逻辑&#xff0c;然后结合f…

idea同时编辑多行-winmac都支持

1背景介绍 idea编辑器非常强大&#xff0c;其中一个功能非常优秀&#xff0c;很多程序员也非常喜欢用。这个功能能够大大大提高工作效率-------------多行代码同时编辑 2win 2.1方法1 按住alt鼠标左键上/下拖动即可 这样选中多行后&#xff0c;可以直接多行编辑。 优点&a…

C++ STL 学习之【string】

✨个人主页&#xff1a; Yohifo &#x1f389;所属专栏&#xff1a; C修行之路 &#x1f38a;每篇一句&#xff1a; 图片来源 The key is to keep company only with people who uplift you, whose presence calls forth your best. 关键是只与那些提升你的人在一起&#xff0c…

前端开发常用案例(二)

这里写目录标题1.loding加载动画2.全屏加载动画效果3.吃豆豆4.鼠标悬停3D翻转效果5.3D旋转木马效果6.flex弹性布局-酷狗音乐播放列表flex弹性布局-今日头条首页热门视频栏grid网格布局-360图片展示小米商城左侧二级菜单1.loding加载动画 代码如下&#xff1a; <!DOCTYPE h…

干货 | PCB电路板短路了!试试这六种检查方法

首先&#xff0c;了解一下常见的电路板短路的种类&#xff1a;短路按照功能性可分为&#xff1a;焊接短路&#xff08;如&#xff1a;连锡&#xff09;、PCB短路&#xff08;如&#xff1a;残铜、孔偏等&#xff09;、器件短路、组装短路、ESD/EOS击穿、电路板内层微短路、电化…

九龙证券|房企纷纷驶入代建赛道 抢占千亿新蓝海

跟着房地产职业进入深度调整期&#xff0c;代建形式日益受到房企青睐&#xff0c;不少房企纷繁入局或加快布局&#xff0c;成为了近期商场关注的焦点。 2月11日&#xff0c;上坤集团宣告将布局共建办理事务&#xff0c;这也意味着其正式入局代建商场。实际上&#xff0c;上一年…

谷歌seo快排技术怎么做?Google排名霸屏推广原理

本文主要分享关于谷歌快速排名的方法和所需要的条件。 本文由光算创作&#xff0c;有可能会被剽窃和修改&#xff0c;我们佛系对待这种行为吧。 首先提出一个问题&#xff1a;谷歌seo快排技术怎么做&#xff1f;如何达到谷歌霸屏的效果&#xff1f; 答案是&#xff1a;利用谷…

Java 基础面试题——常见类

目录1.String 为什么是不可变的&#xff1f;2.字符串拼接用“” 和 StringBuilder 有什么区别?3.String、StringBuffer 和 StringBuilder 的区别是什么?4.String 中的 equals() 和 Object 中的 equals() 有何区别&#xff1f;5.Object 类有哪些常用的方法&#xff1f;6.如何获…

【C语言进阶】你听说过柔性数组吗?

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前是C语言学习者 ✈️专栏&#xff1a;C语言航路 &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章对你有帮助的话 欢迎 评论&#x1f4ac; 点赞&a…

ChatGPT入门案例|商务智能对话客服(三)

本篇介绍智能客服的基本功能架构和基本概念&#xff0c;并利用对话流技术构建商务智能应用。 01、商务智能客服功能结构 互联网的发展已经深入到社会的各个方面&#xff0c;智能化发展已经成为社会发展的大趋势。在大数据和互联网时代&#xff0c;企业和组织愈加重视客户沟通…

波奇学数据结构:时间复杂度和空间复杂度

数据结构&#xff1a;计算机存储&#xff0c;组织数据方式。数据之间存在多种特定关系。时间复杂度&#xff1a;程序基本操作&#xff08;循环等&#xff09;执行的次数大O渐进法表示法用最高阶的项来表示&#xff0c;且常数变为1。F&#xff08;n&#xff09;3*n^22n1//F(n)为…

git基础使用

Git安装 去安装>> 正式开始 进入要管理的目录&#xff0c;执行命令 git init 查看管理目录下的状态 git status 注&#xff1a;新增文件和修改过后的文件都是红色 管理指定文件&#xff08;红变绿&#xff09; 指定文件&#xff1a;git add 文件名 当前目录下所有&…

【Python入门第十二天】Python 列表

Python 集合&#xff08;数组&#xff09; Python 编程语言中有四种集合数据类型&#xff1a; 列表&#xff08;List&#xff09;是一种有序和可更改的集合。允许重复的成员。元组&#xff08;Tuple&#xff09;是一种有序且不可更改的集合。允许重复的成员。集合&#xff08…

深度学习常用的python函数(一)

由于我只简单的学过python和pytorch&#xff0c;其中有很多函数的操作都还是一知半解的&#xff0c;其中有些函数经常见到&#xff0c;所以就打算记录下来。 1.zip zip(*a):针对单个可迭代对象压缩成n个元组&#xff0c;元组数量n等于min(a中元素的最小长度) a [(1, 2), (3…

springmvc网上商城购物每日推荐购买系统 java ssm

为了解决用户便捷地在网上购物&#xff0c;本文设计和开发了一个熙迪网上购买系统。本系统是基于web架构设计&#xff0c;SSM框架 &#xff0c;jsp技术的前台页面设计与实现&#xff0c;使用Mysql数据库管理&#xff0c;综合采用jsp模式来完成系统的相关功能。主要实现了管理员…

Linux中最基本常见命令总结

❤❤&#x1f49b;&#x1f49b;&#x1f49a;&#x1f49a;&#x1f499;&#x1f499;&#x1f49c;&#x1f49c;您的认可是对我最大的帮助&#x1f49c;&#x1f49c;&#x1f499;&#x1f499;&#x1f49a;&#x1f49a;&#x1f49b;&#x1f49b;❤❤ &#x1f90e;&…

【算法基础】堆⭐⭐⭐

一、堆 1. 堆的概念 堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质: (1)堆中某个结点的值总是不大于或不小于其父结点的值; (2)堆总是一棵完全二叉树。 将根结点最大的堆叫做最大堆或大根堆,根结点…