当前位置: 首页 > news >正文

Linux之Xshell工具使用

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/bashrc3、取消别名which ls //先查看命令的完整路径, 在使用完整路径来运行\ls      //反斜杠可以取消特殊意义, 取消ls的别名意义unalias  //直接取消别名如果写到配置文件中,取消的话unalias wk+去配置文件删除4、内置的别名:在环境变量的配置文件中放着alias ls5、/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 # 根路径下的usrcd usr  # 当前路径下的usr
3 执行当前路径下的某个文件./xx linuxxx   windows
4 ~当前用户的家路径:root   /root   jack  /home/jack

mkdir

创建目录

 选项:-v 显示详细信息  -p 递归创建目录mkdir dir1mkdir /home/od/dir1 /home/od/dir2mkdir -v /home/od/{dir3,dir4}  mkdir -pv /home/od/dir5/dir6mkdir -pv /home/{od/{diu,but},boy}mkdir /dir1    在根目录下创建dir1mkdir ./dir1    在当前目录下创建dir1mkdir ../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
. .. .file42.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 treetree /home/ cat :查看文本内容cat >> test2.txt <<EOF> ads> adf> EOFless,more:文本查看,分页less /etc/servicesmore只支持向前浏览,less命令允许向前或向后浏览文件less [选项] 文件名可以使用/ 查找 n向下 N向上查找less打开文件:ctrl+b:下翻页       ctrl+f:上翻页Page Up 向上翻页,Page Down 向下翻页headhead -n    文件名 (不加默认开头十行)head -n1 /etc/services :查看该文件第一行ps aux | head -n5 :查看前5个进程head -n -3 3.txt   #-3 不显示最后3行head -n +3 3.txt   #就只显示前三行tailtail -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 wgetwget 路径  默认下载在当前路径wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repocurl:连通性可以连百度等 curl www.baidu.comdjango:127.0.0.1:8080端口,先在本地curl一下,看看能不能通,可能是防火墙,阿里云的安全组curl -o /home/a.png https:72743-20190.png上传下载 (4g以内)yum install lrzsz -yrz:上传,选择文件直接上传sz:sz 文件路径  可以下载到当前主机which  命令 :找出命令的绝对路径去/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/b   in:/root/bin 路径找有没有whereis命令:找出命令的路径以及文档手册信息whereis -b ls  查找ls命令,只找二进制(可执行文件)sortsort file.txt  对内容进行排序sort -t ":" -k2 file.txtsort -t ":" -n -k2 file.txtuniq 去重,连续挨着的才能去,所以要跟sort连用sort file2.txt | uniq
cut Im xh, is QQ 3524130451cut -d " " -f2,5 file.txt #把字符串按“ ” 分割,取出第2和第5个wcwc -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

相关文章:

Linux之Xshell工具使用

shell简介Xshell是一个远程工具&#xff0c;可以远程连接linux系统 &#xff0c;SSH&#xff0c;远程管理 Xshell来远程访问Linux系统的终端 。shell的英文含义是“壳”&#xff1b;它是相对于内核来说的&#xff0c;因为它是建立在内核的基础上&#xff0c;面向于用户的一种表…...

【数据结构与算法】时间复杂度与空间复杂度

目录 一.前言 二.时间复杂度 1.概念 二.大O的渐进表示法 概念&#xff1a; 总结&#xff1a; 三.常见时间复杂度计算举例 例1 例2 例3 例4 例5.计算冒泡排序的时间复杂度 例6.二分算法的时间复杂度 例7.阶乘递归Fac的时间复杂度 例8.斐波那契递归的时间复杂度 …...

Nginx如何配置Http、Https、WS、WSS的方法步骤

这篇文章主要介绍了Nginx如何配置Http、Https、WS、WSS的方法步骤&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值&#xff0c;需要的朋友们下面随着小编来一起学习学习吧 写在前面 当今互联网领域&#xff0c;Nginx是使…...

【博客621】iptables -J动作总结

iptables -J动作总结 1、iptables常见动作 ACCEPTDROPREJECTLOGSNATDNATMASQUERADEREDIRECT 2、iptables常见动作用法 2-1、ACCEPT&#xff1a; 作用&#xff1a;用于接收匹配的流量&#xff0c;使得流量继续往后面的规则和链路去匹配 2-2、DROP 作用&#xff1a;用于丢弃匹…...

Chrome开发者工具:利用网络面板做性能分析

Chrome 开发者工具&#xff08;简称 DevTools&#xff09;是一组网页制作和调试的工具&#xff0c;内嵌于 Google Chrome 浏览器中。 Chrome 开发者工具有很多重要的面板&#xff0c;比如与性能相关的有网络面板、Performance 面板、内存面板等&#xff0c;与调试页面相关的有…...

SpringCloud系列(十三)[分布式搜索引擎篇] - ElasticSearch 的概念及 Centos 7 下详细安装步骤

打开淘宝, 搜索 狂飙 会出现各种价格有关狂飙的书籍, 当然也有高启强同款的孙子兵法!!! 如下图所示: 那么面对海量的数据, 如何快速且准确的找到我们想要的内容呢? 淘宝界面已经可以按照综合排序 / 销量 / 信用 / 价格等进行筛选, 是如何做到的呢? ElasticSearch 11 Elastic…...

04_Docker 镜像和仓库

04_Docker 镜像和仓库 文章目录04_Docker 镜像和仓库4.1 什么是 Docker 镜像4.2 列出 Docker 镜像4.3 拉取镜像4.4 查找镜像4.5 构建镜像4.5.1 创建 Docker Hub 账号4.5.2 用 Docker 的 commit 命令创建镜像4.5.3 用 Dockerfile 构建镜像4.5.5 基于 Dockerfile 构建新镜像4.5.5…...

postman-enterprise-API

Postman 是一个用于构建和使用 API 的 API 平台。Postman 简化了 API 生命周期的每个步骤并简化了协作&#xff0c;因此您可以更快地创建更好的 API。 API存储库 在一个中央平台上围绕您的所有 API 工件轻松存储、编目和协作。Postman 可以存储和管理 API 规范、文档、工作流配…...

【ESP 保姆级教程】玩转emqx MQTT篇② ——保留消息和遗嘱消息

忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2023-02-18 ❤️❤️ 本篇更新记录 2023-02-18 ❤️🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言📝🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请…...

开启慢查询日志方法

步骤 开启慢查询日志 SET GLOBAL slow_query_log on;SHOW VARIABLES like slow_query_log;设置时间限制 SET GLOBAL long_query_time 1; -- 单位sSHOW VARIABLES LIKE %long_query_time%;因为long_query_time参数只对新的数据库连接生效&#xff0c;所以还需要重启msql客户端…...

宝塔搭建实战人才求职管理系统admin前端vue源码(二)

大家好啊&#xff0c;我是测评君&#xff0c;欢迎来到web测评。 上一期给大家分享骑士cms后台端在宝塔的搭建部署方式&#xff0c;这套系统是前后端分离的架构&#xff0c;前端是用vue2开发的&#xff0c;还需要在本地打包手动发布上宝塔&#xff0c;所以本期给大家分享&#x…...

SpringMVC——基础知识

基本概念 SpringMVC是基于servlet api构造的原始web框架&#xff0c;全称是Spring Web MVC 而MVC的全称是Model View Controller&#xff0c;翻译成中文分别是“模型”&#xff0c;“视图”&#xff0c;“控制器”&#xff0c;这是一种软件的架构模式 Model&#xff1a;用来…...

论文浅尝 | SpCQL: 一个自然语言转换Cypher的语义解析数据集

笔记整理&#xff1a;郭爱博&#xff0c;国防科技大学博士论文发表会议&#xff1a;The 31th ACM International Conference on Information and Knowledge Management&#xff0c;CIKM 2022动机随着社交、电子商务、金融等行业的快速发展&#xff0c;现实世界编织出一张庞大而…...

MongoDB 使用规范与限制及最佳实践

MongoDB 灵活文档的优势 灵活库/集合命名及字段增减同一字段可存储不同类型数据Json 文档可多层次嵌套文档对于开发而言最自然的表达 MongoDB 灵活文档的烦恼 数据库集合字段名千奇百怪同一字段数据类型各不一样业务异常可能写入“脏”数据 1.1 库命名规范 不能为空字符串 &…...

第五十六章 树状数组(一)

第五十六章 树状数组一、前缀和的缺陷二、树状数组1、作用2、算法分析3、算法实现&#xff08;1&#xff09;lowbits()&#xff08;2&#xff09;插入&#xff08;3&#xff09;查询三、例题1、问题题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1提示2、代码一、前缀和…...

kubernetes教程 --Pod控制器详解

Pod控制器详解 介绍 Pod是kubernetes的最小管理单元&#xff0c;在kubernetes中&#xff0c;按照pod的创建方式可以将其分为两类&#xff1a; 自主式pod&#xff1a;kubernetes直接创建出来的Pod&#xff0c;这种pod删除后就没有了&#xff0c;也不会重建控制器创建的pod&am…...

N2750A Agilent Keysight HP 差分探头1.5GHz

N2750A Agilent Keysight HP 差分探头13554860890 N2750A 是 Agilent Keysight HP 的 1.5 GHz 差分探头。 特征&#xff1a; N2750A&#xff1a;1.5 GHz 衰减比&#xff1a;2:1 或 10:1&#xff08;可切换&#xff09; 动态范围&#xff1a; 5 V 或 10 Vpp&#xff08;10:1 时…...

一文搞懂Linux内核进程CPU调度基本原理

为什么需要调度 进程调度的概念比较简单&#xff0c;我们假设在一个单核处理器的系统中&#xff0c;同一时刻只有一个进程可以拥有处理器资源&#xff0c;那么其他的进程只能在就绪队列中等待&#xff0c;等到处理器空闲之后才有计划获得处理器资源来运行。在这种场景下&#…...

java ssm爱宠宠物医院挂号预约系统管理系统设计与实现

本课题所实现的宠物医院网站是基于网页&#xff0c;它可以实现网上预约挂号&#xff0c;评价等基本功能。用户只要手边有一部手机或者一台电脑&#xff0c;可以上网浏览网页&#xff0c;便可以使用本系统&#xff0c;没有时间和地点的限制&#xff0c;使得就医预约&#xff0c;…...

自动化测试工具_Jmeter

【课程简介】 接口测试是测试系统组件间接口的一种测试,接口测试天生为高复杂性的平台带来高效的缺陷监测和质量监督能力,平台越复杂&#xff0c;系统越庞大&#xff0c;接口测试的效果越明显。在接口测试大行其道的今天,测试工具也愈发重要,Jmeter作为一款纯 Java 开发的测试…...

PostgreSQL CASE语句深度解析:性能、类型与NULL安全实战指南

1. 为什么你必须真正吃透 PostgreSQL 的 CASE 语句——它远不止是 SQL 里的“if-else”翻译器在 PostgreSQL 实战中&#xff0c;我见过太多人把CASE当成一个语法糖&#xff1a;写几个WHEN...THEN&#xff0c;加个ELSE&#xff0c;再套个END&#xff0c;就以为搞定了。结果呢&am…...

Visual Paradigm 17.0 团队协作新功能实测:手把手教你用项目模板和文件夹管理提效

Visual Paradigm 17.0 团队协作实战指南&#xff1a;从模板配置到文件夹管理的高效工作流在敏捷开发团队中&#xff0c;项目启动速度和资产管理的规范性往往直接影响整体效率。Visual Paradigm 17.0针对这一痛点推出的团队协作增强功能&#xff0c;特别是服务器端项目模板和文件…...

13456

12356...

基于Arduino的智能蓝调节拍器:DIY音乐练习伴侣

1. 项目概述&#xff1a;一个能“演奏”蓝调的低成本节拍器玩乐器的人&#xff0c;对节拍器这东西又爱又恨。它像一位严厉的监工&#xff0c;用单调的“嘀嗒”声强迫你跟上节奏。但你想过没有&#xff0c;这个监工其实可以很有趣&#xff1f;几年前&#xff0c;我在练习蓝调吉他…...

解密高校教师必会的Gemini 3.1 Pro五大科研隐藏技能:从论文评估到创新点锁定

各位同仁好,我是七哥。一个在高校里从事人工智能相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude等大模型学术实操相关问题,多多交流,相互成就,共同进步。 科研路上,有人发完顶刊顺利晋升,有人还在为创新点抓耳挠腮。 大多数教…...

Web渗透测试能力成长地图:从工具使用到漏洞认知跃迁

1. 这不是工具清单&#xff0c;而是一张Web渗透测试的“能力成长地图”你刚点开这篇文章&#xff0c;大概率正站在两个路口之间&#xff1a;一边是网上铺天盖地的“十大免费扫描器推荐”&#xff0c;点进去全是截图下载链接一句“一键扫漏洞”&#xff0c;结果装完跑两下&#…...

LangGraph状态机工程:构建复杂AI工作流的完整指南

传统RAG&#xff08;检索增强生成&#xff09;在处理简单的"单跳"问题时表现良好——“文章里提到了什么” “这个概念是什么意思”——但当问题涉及多个实体之间的关系、需要跨多个文档推理时&#xff0c;传统RAG就显得力不从心。GraphRAG&#xff08;Graph-based R…...

ComfyUI-Manager完整指南:如何轻松管理你的AI工作流扩展库

ComfyUI-Manager完整指南&#xff1a;如何轻松管理你的AI工作流扩展库 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various c…...

ZMJS,把 JavaScript 解释器放进 SAP ABAP 应用服务器之后,很多扩展思路会变得不一样

我今天看这个 oisee/zmjs 仓库时,最吸引人的不是它把 JavaScript 语法做进了 ABAP,而是它选择了一条非常 SAP 的路线,纯 ABAP、无外部依赖、无 Kernel Module、以类和接口的形式运行在 SAP 应用服务器内部。仓库自己的定位很直接,ZMJS 是一个面向 SAP ABAP 的 Mini JavaScr…...

【python】ImportError: DLL load failed while importing QtWidgets: 找不到指定的程序。重新安装后搞定

文章目录前言一、PyQt6引用后报错二、使用步骤总结前言 想做个好看的界面&#xff0c;引用了PyQt6&#xff0c;却产生了新问题。 pip install pyqt6-tools&#xff0c;优先做这个动作进行修复。 一、PyQt6引用后报错 python里引用&#xff1a; from PyQt6.QtWidgets import…...