• [技术干货] CodeArts IDE for RemoteShell快捷键
    CodeArts for RemoteShell区域按键功能全局快捷键Ctrl + Shift + W关闭窗口Ctrl + K组合键基本编辑Ctrl + X剪切Ctrl + C复制Alt + Arrowup向上移动行Alt + Arrowdown向下移动行Shift + Alt + Arrowup在上面复制当前行Shift + Alt + Arrowdown在下面复制当前行Ctrl + Shift + K删除一行Ctrl + Enter在下面插入行Ctrl + Shift + Enter在上面插入行Ctrl + Shift + \跳转到匹配括号Ctrl + ]增加缩进Ctrl + [减少缩进Home转到行首End转到行尾Ctrl + Home转到文件开头Ctrl + End转到文件末尾Ctrl + Arrowup向上滚动行Ctrl + Arrowdown向下滚动行Alt + Pageup向上滚动页面Alt + Pagedown向下滚动页面Ctrl + Shift + [折叠区域Ctrl + Shift + ]展开区域Ctrl + K,Ctrl + [折叠所有子区域Ctrl + K,Ctrl + ]展开所有子区域Ctrl + K,Ctrl + 0折叠所有区域Ctrl + K,Ctrl + J展开所有区域Ctrl + K,Ctrl + C添加行注释Ctrl + K,Ctrl + U删除行注释Ctrl + /切换行注释Shift + Alt + A切换块注释Alt + Z切换自动换行导航Alt + Leftarrow后退Alt + Rightarrow前进查找&替换Ctrl + F查找Ctrl + H替换F3查找下一个Shift + F3查找上一个Alt + Enter选择所有的匹配Ctrl + D将选择添加到下一个查找匹配项Ctrl + K,Ctrl + D将上一个选择移到下一个查找匹配项Alt + C切换是否区分大小写Alt + R切换是否正则表达式Alt + W切换是否全字匹配多光标选择Alt  +  (鼠标点击)插入光标Ctrl  +    Alt  +  ↑在上方插入光标Ctrl  +    Alt  +  ↓在下方插入光标Ctrl  +    U撤消上一个光标操作Shift  +    Alt  +  I在所选的每一行的末尾插入光标Ctrl  +    L选择当前行Ctrl  +    Shift  +  L选择所有当前选择Ctrl  +    F2选择所有出现的当前单词Shift  +    Alt  +  →扩展选择Shift  +    Alt  +  ←收缩选择Shift  +    Alt  +  (拖曳鼠标)列(框)选择Ctrl  +    Shift  +  Alt  +  (箭头键)列(框)选择Ctrl  +    Shift  +  Alt  +  Pageup向前列(框)选择页面Ctrl  +    Shift  +  Alt  +  Pagedown向后列(框)选择页面代码编辑Ctrl + Space显示代码推荐Ctrl + K,Ctrl + X删除每一行行尾空格编辑器editorCtrl + F4,Ctrl + W关闭当前编辑页Ctrl + Shift  + Pageup向左移动编辑器Ctrl + Shift + Pagedown向右移动编辑器Ctrl + \分割编辑器Ctrl + 1 第一编辑器组获取焦点Ctrl + 2第二编辑器组获取焦点Ctrl + 3第三编辑器组获取焦点Ctrl + K,Ctrl + LeftArrow让上一个编辑器组获取焦点Ctrl + K,Ctrl + RightArrow让下一个编辑器组获取焦点Ctrl + K,LeftArrow向左侧移动当前编辑器组Ctrl + K,RightArrow向右侧移动当前编辑器组文件管理Ctrl + S保存文件Ctrl + F4,Ctrl + W关闭文件Ctrl + Shift + T重新打开最近一次关闭的编辑器Ctrl + Tab打开下一个文件Ctrl + Shift + Tab打开上一个文件Ctrl + K,P复制当前活动文件的路径显示F11切换全屏Ctrl + =放大显示Ctrl + -缩小显示Ctrl + B显示/隐藏侧边栏Ctrl + K,Z禅模式,按两次esc退出终端Ctrl + Shift + `创建新终端Ctrl + C复制选择Ctrl + V粘贴到活动终端Ctrl + Arrowup向上滚动Ctrl + Arrowdown向下滚动Shift + Pageup向上滚动页面Shift + Pagedown向下滚动页面Ctrl + Home滚动到顶部Ctrl + End滚动到底部
  • [技术干货] CodeArts IDE for RemoteShell常见问题
    一、登录激活常见问题1、登录华为云失败,该如何处理?解决办法:检查本机是否需要配置proxy登录,如已配置请检查proxy是否有效。在"管理代理服务器"弹窗中配置全局代理,可以成功登录激活RemoteShell。二、proxy配置常见问题1、登录华为云服务器,proxy该如何设置?新建主机连接时,可在"管理代理服务器"弹窗配置。如需修改,可点击修改远程主机信息进行修改。2、proxy配置修改后不生效,如何解决?解决办法:可以尝试点击关闭该主机的所有连接,再重新操作连接。3、proxy配置检查连接失败,如何解决?解决办法:检查proxy的地址和端口是否有效,用户名或密码是否输入错误,修改后重新尝试。三、新建主机连接常见问题1、新建主机连接失败,可根据以下可能原因排查重试。检查用户名、密码是否输入正确。确保SSH服务已开启(默认端口为22),如果修改SSH默认的22端口,请确认要连接的远程端口已配置且生效,并添加对应的防火墙规则。确认当前使用proxy代理配置出口IP的全部地址的远程端口(SSH默认端口为22)已经允许。检查弹性云服务器的防火墙是否允许当前该主机使用的proxy代理配置的出口IP作为入口IP。请确认网络ACL没有禁用当前该主机使用的proxy代理配置的出口IP。2、遇到如下连接失败的场景,该如何解决?在连接远程主机时,遇到如下报错时,即为代理服务器未输入用户名和密码引起。解决办法:需在代理服务器弹窗中输入用户名和密码,如下图:​在连接远程主机时,遇到如下报错时,即为网络超时引起。解决办法:确认proxy地址是否有效。在连接远程主机时,遇到如下报错时,即为错误的密码或主机IP引起。解决办法:修改正确密码后,重新尝试连接。或尝试移除该远程主机后,使用正确的主机地址进行新建远程连接。四、增加用户连接常见问题1、用户尝试打开较多终端时,受到限制?单个用户目前仅支持同时创建7个终端。2、用户名错误导致连接失败,无法修改用户名,如何操作才能连接成功?解决办法:不可直接修改用户名,请移除该用户连接后重新尝试使用正确的用户名新建连接。
  • [技术干货] 使用CodeArts IDE for RemoteShell 连接华为云ECS主机
    简介本章节主要介绍使用RemoteShell插件的远程主机和用户连接、管理代理配置、用户操作远程文件系统及获取华为云服务器相关功能,支持开发者在完全不需要拥有远程开发环境源代码的情况下,也能轻松获得远程开发体验。使用CodeArts IDE for RemoteShell,您可以连接华为云ECS主机或任意主机。一、下载安装CodeArts IDE for Remoteshell现已开放公测,下载获取免费体验。二、创建主机连接RemoteShell支持创建主机(可多台)远程连接,在新建远程连接时,可选择使用或不使用代理进行连接,身份认证支持密码、密钥、双因子三种方式。当RemoteShell自动打开远程主机终端,成功获取远程文件系统时,说明主机连接成功,界面提示如下:在使用过程中,可对远程主机基本信息进行修改,也可以移除主机和断开所有主机连接。三、proxy配置管理可以新增,编辑,删除proxy。如果您需要配置全局代理,可以在“应用程序代理”中进行修改。如果您的远程主机需要使用代理进行连接,只可选用列表中其中一个或不使用代理,即在创建主机连接时选中某个代理或者不使用,或对已有主机信息进行修改。四、增加用户使用连接创建主机连接成功后,会自动增加当前用户的远程使用权限。同时也支持一台主机增加多用户连接。当RemoteShell自动打开远程主机终端,成功获取相应的远程文件系统,说明用户连接成功。在使用过程中,可对用户连接的基本信息进行修改,也可以移除该用户和断开该用户的连接。五、操作远程文件系统和远程终端创建主机连接成功后,即可操作远程文件系统。文件系统通过文件树右键菜单即可对内部文件/文件夹进行上传、下载、复制粘贴、删除、重命名等操作。可直接编辑文件代码,也可通过顶部菜单“编辑文件”功能或编辑区右键菜单进行相关操作。通过文件右键菜单可对文件和终端进行拆分、关闭等操作。与语言服务相关的代码补全、重构、跳转、修复、华为云SDK代码补全助等功能,请您持续关注后续迭代版本。2. 远程终端多终端分区布局:您可以在同一个页面中创建多个RemoteShell终端,并可以直接拖动窗口,随意组合成您喜欢的布局。六、获取华为云服务器首先需要使用华为云账号即可完成登录:2.登录成功后才能获取,绿色表示当前可连接的远程机,点击按钮可以继续执行连接到该主机的操作。
  • [问题求助] AICC压测文件
    【问题来源】公司根据华为侧提供的压测文档来进行操作【问题简要】在安装完各种工具后,发现缺失startclient.sh文件,无法进行下一步【问题类别】【AICC】【问题现象描述】在安装完1,ncurses、2, libpcap、3,bison、4,flex、5,SIPp这5个工具后,接下来安装签入工具时,发现提供的安装包中缺少startclient.sh,文档图中示例展示的有agent TXT文件,agentsimulate压缩包,agentsimulate-8.14.0-SNAPSHOT,startclient.sh,目前需要华为侧提供下startclient.sh这个文件。【日志或错误截图】已上传附件【附件】文档信息附件下载
  • [问题求助] AICC压测文档
    麻烦提供下这几个文件
  • [问题求助] shell 脚本无法执行
    不知道未什么会去读root_715369_out.txt,
  • [openEuler] openeuler系统outbox外部驱动使能指导
    Outbox外部驱动使能指导  1    QLogic qla2xxx 1.    驱动下载链接:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 2.    环境信息 openeuler-20.03lts-sp33.    解压驱动包  4.    cd /qla2xxx-10.02.06.02-k ./extras/build.sh  install        仅做测试使用,重启不生效 ./extras/build.sh  initrd        重启生效  5.    查看新驱动 modinfo qla2xxx qla2xxx 第二种 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 或     https://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/Files/TempDownlods/99261/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 2.    环境信息 openeuler-20.03lts-sp33.    安装新驱动   rpm –ivh qla2xxx-10.02.06.04_k-1dkms.noarch.rpm  tmp/dkms.xxxx/下面是新驱动,把原来的ko文件备份 modinfo qla2xxx.ko |grep dep  insmod qla2xxx.ko  4.查看新驱动 modinfo qla2xxx |more  2    Intel     igb/i40e/ixgbe/ixgbevf/ice 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/x86_64/Packages/igb-5.5.2-1.x86_64.rpm 2.    环境信息 openeuler-20.03lts-sp13.    安装新驱动 rpm –ivh igb-5.5.2-1.x86_64.rpm  find / -name “igb.ko”  把新的igb.ko文件替换掉内核自带的igb.ko文件,updates这个目录下是新驱动的文件,把原来的ko文件备份  rmmod        igb insmod        igb.ko modprobe        igb      4.    查看新驱动  igb 第二种情况 1.    驱动下载地址 https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/igb-5.11.4.tar.gz  2.    环境信息 openeuler-20.03lts-sp3 3.    安装新驱动 解压缩软件包 tar –xvf igb-5.11.4.tar.gz cd igb-5.11.4/src make install 4.    查看新驱动 Modinfo igb |more                3    Avago megaraid_sas 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/x86_64/Packages/RAID-3004iMR_3108_3408iMR_3416iMR_3508_3516-openEuler20.03-megaraid_sas-07.714.04.00-1-x86_64.rpm  2.    环境信息 openeuler-20.03lts-sp1     3.    安装新驱动 rpm -ivh RAID-3004iMR_3108_3408iMR_3416iMR_3508_3516-openEuler20.03-megaraid_sas-07.714.04.00-1-x86_64.rpm 4.    查看新驱动 modinfo megaraid_sas megaraid_sas(官网) 1.    驱动下载地址:https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/MR_LINUX_DRIVER_7.21-07.721.02.00-1.tgz 2.    环境信息 openeuler-20.03lts-sp13.    安装驱动     解压驱动包     tar –xvf MR_LINUX_DRIVER_7.21-07.721.02.00-1.tgz     tar –xvf megaraid_sas_components.tgz     cd openEuler     cd rpms-1     rpm –ivh kmod-megaraid_sas-07.721.02.00_oe20.03-1.aarch64.rpm 4.    查看新驱动  Megaraid_sas 官网下载地址:https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/MR_LINUX_DRIVER_7.22-07.722.02.00-2.tgz 1.环境信息:  openeuler-20.03lts-sp13.解压缩安装包 解压源码包  cd megaraid_sas-07.722.02.00 ./compile.sh        会在当前目录生成一个megaraid_sas.ko文件 find  / -name “megaraid_sas.ko”  备份/kernel 路径下的ko文件 把上面生成的Ko文件放到kernel/drivers/scsi/megaraid/路径下 reboot 4.查看新驱动 modinfo megaraid_sas 4    Huawei hifc/hinic 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS/contrib/drivers/aarch64/Packages/FC-IN300-openEuler20.03-hifc-3.7.0.8-aarch64.rpm 2.    环境信息  openeuler-20.03-lts3.    安装驱动  rpm -ivh xxxx4.    查看驱动信息 modprobe hifc  5    Mellanox mlx5_core 1.     驱动下载地址: https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ MLNX_OFED_LINUX-5.6-2.0.9.0-openeuler20.03sp1-x86_64.tgz 2.    环境信息  openeuler-20.03lts-sp13.    安装新驱动      解压OFED驱动包  ./mlnxofedinstall    --add-kernel-support 安装报错缺少依赖包    yum install 即可  4.    查看新驱动     modinf mlx5_core  Mellanox ofed community 驱动 1.     驱动下载地址:  https://repo.oepkgs.net/openEuler/rpm/openEuler-22.03-LTS/contrib/drivers/source/Packages/MLNX_OFED_SRC-5.7-1.0.2.0.tgz https://www.mellanox.com/downloads/ofed/ MLNX_OFED-5.7-1.0.2.0/ MLNX_OFED_SRC- 5.7-1.0.2.0.tgz 2.    环境信息 openeuler-22.03-lts3.安装驱动     解压安装包     tar –xvf MLNX_OFED_SRC-5.7-1.0.2.0.tgz     cd MLNX_OFED_SRC-5.7-1.0.2.0     yum install python     ./install.pl      选择2          选择1     报错缺少依赖,安装所需要的依赖,重复上面的步骤./install.pl     yum install cmake …… 4.查看新驱动       6    Broadcom lpfc 1.     驱动下载地址: https://docs.broadcom.com/docs-and-downloads/oem/support/elx/rt14.0.1/14.0.326.19/elx-lpfc-dd-openEuler20-14.0.326.19-ds-1.tar.gz 2.    环境信息   openeuler-20.03lts-sp13.    安装新驱动 解压安装包 cd elx-lpfc-dd-openEuler20-14.0.326.19-ds-1 ./elx_lpfc_install.sh  4.    查看新驱动 lpfc 第二种 1.     驱动下载地址: https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/source/Packages/elx-lpfc-dd-openEuler20-12.8.614.14-ds-1.tar.gz     或     https://docs.broadcom.com/docs-and-downloads/oem/support/elx/rt12.8.13/12.8.614.20/elx-lpfc-dd-openEuler20-12.8.614.14-ds-1.tar.gz 2.    环境信息  openeuler-20.03lts-sp13.    安装新驱动 解压安装包  cd elx-lpfc-dd-openEuler20-12.8.614.14-ds ./elx_lpfc_install.sh  find  / -name  “lpfc.ko”  extra/elx-lpfc/lpfc.ko是新驱动,把新驱动复制到kernel/drivers/scsi/lpfc/下面,把原来的lpfc.ko备份 modprobe  lpfc  4.    查看新驱动 modinfo lpfc|more  
  • [openEuler] yum工具使用(管理软件包)
    管理软件包:搜索软件包使用yum能够方便的进行查询、安装、删除软件包使用如下命令 可以通过软件包的名称、缩写或者描述搜索需要的包文件:yum search 名称这样就解决了想要安装一个软件但是有时候往往不能够准确的知道它的名字问题比如:当我们需要安装一个instant Messenger,但是又不知道到底又那些,这时就可以使用 yum search message 先进行搜索然后再去安装管理软件包:列出软件包我们已经知道使用yum可以使我们很轻松的下载很多依赖和软件,除此之外yum也可以对我们下载的很多软件包进行管理,可以轻松的获取软件包的相关信息如果要列出系统中所有已安装的已经可以使用的RPM软件包,可以使用以下命令:yum list all如果需要列出特定RPM包的信息,将上面的all换成RPM包名即可:yum list [包名]如图:管理软件包:显示RPM包信息要显示一个或者多个RPM包的信息可以使用如下的命令yum info 包名如图所示:管理软件包:安装RPM包要安装一个软件包及其所有未安装的依赖,在root权限下执行如下命令:yum install 名称也可以通过添加软件包名同时安装多个软件包。配置文件/etc/yum/yum.conf添加参数strict=False,运行yum命令参数添加–setopt=strict=0。 在root权限下执行如下命令:yum install 名称 名称 .....--setopt=strict=0管理软件包:下载、删除软件包使用yum下载软件包,可以在root权限下使用如下命令:yum download 名称如果同时需要下载未安装的依赖,只需要加上–resolve:yum download --resolve 名称如果需要卸载软件包及其相关的依赖包,需要在root权限下执行如下命令:yum remove 名称管理软件包组:列出软件包组清单软件包组是一组用于公共功能的软件包,包括系统工具、声音和视频。 安装软件包组的过程中,会获取到一系列的依赖包,从而大大节省了时间。使用yum可以对软件包组进行安装/删除等操作,使相关操作更高效使用summary参数,可以列出系统中所有已安装软件包组、可用的组、可用的环境组额数量:yum groups summaryyum group list 列出软件包组和对应组的id管理软件包组:显示软件包组信息列出包含在一个软件包组中必须安装的包和可选包yum group info glob_expression...例如:管理软件包组:安装、删除软件包组每一个软件包组都有自己的名称以及相应的id,可以使用软件包组名称或它的id进行安装:yum group install 名称yum group install id同样如果要卸载软件包组,可以使用软件包组的名称或者idyum group remove 名称yum group remove id软件包检查、更新升级yum工具可以检查系统中是否有软件包更新。可以通过yum列出需要更新的软件包,并可以选择一次性全部更新或者只对某个包进行更新显示当前系统可用的更新:yum check-update 升级单个软件包,在root权限下执行:yum update package_name更新所有的包和他们的依赖yum update
  • [openEuler] yum工具使用(配置yum)
    HCE—OS—yum工具使用(配置yum)yum工具概述yum全称Yellow dog Updater, Modified,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上可以通过 360 软件管家实现软件的一键安装、升级和卸载,Linux 系统也提供有这样的工具,就是 yum。通过yum源我们可以获取软件包、进行软件包的升级那么我们为什么要使用yum进行软件安装?这是因为当我们安装某个软件的时候往往会伴随着很多的其他组件一起安装,尤其是一些依赖之间的关系往往很难去梳理当我们使用yum工具进行安装就避免了这些麻烦yum工具的主要特点:可以同时配置多个资源库简介的进行文件配置自动解决或删除rpm包时遇到的依赖性问题保持了rpm数据库的一致性这样基于RPM包管理,能够从指定的服务器自动下载RPM包并且自动安装,这样就可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐的下载、安装在使用yum工具前我们需要对yum进行一些配置配置yum:yum配置文件yum的主要配置文件是/etc/yum/yum.conf该文件中主要包含两部分mainrepository【main部分】:定义了全局配置选项,整个yum配置文件只能有一个main。该文件是/etc/yum.conf【repository部分】:定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d 目录下的各文件中。另外:在/etc/yum.repos.d目录中保存着一个或者多个repo源的相关文件,它们可以定义不同的repository配置yum:显示当前配置当要显示当前的配置信息时可以使用以下命令:yum config-manager --dump当要显示相应的软件的配置时,首先查询repo id:yum repolist然后执行命令显示对应id的软件源配置,其中repository为查询得到的repo id:yum config-manager --dump repository也可以使用一个全局正则表达式来显示所有匹配部分的配置:yum config-manager --dump glob_experssion配置yum:创建本地软件源仓库要建立一个本地的软件源仓库,可以按照下面的步骤操作:安装createrrepo软件包,在root权限下执行:yum install createrepo将需要的软件包复制到一个目录下,可以直接新建目录,如:/local_repo/执行以下命令创建软件源:createrepo /local_repo这样就可以将本地软件源仓库自动配置完成配置yum:添加启动和禁用软件源添加软件源 - 要定义一个新的软件源仓库,可以在/etc/yum/yum.conf文件中添加repository部分),或者在/etc/yum.repos.d目录下添加.repo文件(如图所示只有一个软件源)。执行下面一段代码其中repository_url为repo源地址:yum config-manager --add-repo repository_url启动软件源 - 要启动软件源,需要在root权限下执行如下命令,其中repository为新增的.repo文件中的repo id (可以通过yum repolist查询):yum config-manager --dump repository
  • [openEuler] Shell脚本概述
    HCE-OS基础操作——Shell脚本概述Shell脚本编写基础知识linux shell是一种特殊的交互式工具,它为用户提供了启动程序、管理文件系统中的文件以及运行在linux系统上的进程的途径。shell的核心是命令行提示符。命令行提示符是shell负责交互的部分。它允许你输入文本命令,然后解析命令,并在内核中执行。常见的shell有bash、zsh、ksh、ash等,由于linux系统默认为bash,因此本文章主要采用bash。使用shell脚本的几点好处:shell脚本可以记录执行命令的过程和逻辑,以便下次的重复执行shell脚本可以批量处理主机shell脚本可以定时处理主机创建和执行Bash shell脚本Bash是linux下默认提供的shell解释器,而且是使用最广泛、与其他shell兼容性最好的解释器创建和执行一个shell程序一般需要以下几个步骤:利用文本编辑器创建脚本内容使用”chmod”命令设置脚本可以执行属性执行脚本命令解释器在Bash shell脚本中第一行以#!开头,通常也称为sharp-bang后面的路劲名称是命令解释器,也就是应用于执行脚本的程序Bash shell脚本将由Bash shell解释,因此他们作为第一行的开头#!/bin/bashecho “hello”执行Bash shell脚本在编写完成shell脚本后不能立即执行,我们需要对其进行权限修改,不然会发生以下报错接下我们需要修改文件权限和所有文件,使它可以变成可执行文件使用chmod命令修改执行权限,并且可以与chown命令组合更改脚本的文件所有权主要命令如下:chmod +x hello.shchmod 755 hello.shsh hello.sh./hello.sh变量的使用shell脚本的编写也需要一些变量的定义,这些变量可以支持我们去编写一些其他更为复杂的shell脚本这些变量可以在内存中存储数据通过变量我们可以轻松访问和修改存储的数据而且相较于其他语言shell变量要简单的多,这里没用的众多的存储类型的限制也能用预定义,shell变量可以边定义的同时边赋值shell变量的种类:1、环境变量临时变量环境变量是永久性的变量,一旦定义其值就不会随脚本的执行结束而消失临时变量则是在shell脚本内部定义的,当脚本执行结束这些值也就消失了变量命名规则变量名称可以由数字、字母(大写和小写)和下划线”_”组成变量的名称不能以数字开头等号=用于为变量分配值,并且不能使用空格将其与变量名称或值进行分隔如以下变量均为有效变量:变量数据类型shell变量中存储的数据类型,常见的有两种:整数类型:zhangsan=40字符串类型:zhangsan=’zhang san’当在为变量分配字符串值得时候,通常用引号将其括起来,如果没有将其括起那么Bash会将空格字符解释为单词分隔符当我们需要处理一些Bash具有特殊意义含义得字符时我们可以使用双引号扩展变量通过在变量名称前面加上$,我们就可以通过变量扩展来重新调用变量的值在程序执行中使用的变量的值的时候,要在变量名面前加上一个$号,这里就会告诉shell,要进行变量值的替换
  • [openEuler] Shell基础命令
    HCE-OS基础操作——Shell基础命令Shell常用命令shell常用的命令一共分为目录操作、文件操作、压缩文件操作、查找操作等,以下为我们介绍详细的各个操作一、目录操作:1、cd 目录切换ls/pwd 查看目录mkdir 创建目录rm 删除目录或文件rmdir 删除文件夹mv 修改目录名称/移动文件二、文件操作:1、touch 新建文件cp 文件复制vim 修改、新增文件cat/head/tail/more/less 查看文件内容三、压缩文件操作:1、tar/gzip  压缩/解压缩文件四、查找操作:1、find 在指定目录下查找文件grep 用于查找文件里符合条件的字符串which 用于查找文件whereis 用于查找指定类型的文件五、其他操作:1、kill 删除执行中的程序和工作su 变更为其他使用者的身份wget 下载指定的链接内容chmod 权限操作ln 连接文件或者目录以上是shell常用的命令操作,接下来我们看看每个操作的具体shell常用命令语法规则目录操作——cd目录切换语法:cd [dir]cd /[dir] 进入到目录/dir中cd  .. 回到上一级目录当中cd cd后面不带参数默认回到家目录下目录操作——ls查看目录语法:ls  [OPTION]....[FILE]....-a 显示所有文件及目录(当我们的文件或者目录名称开头为“.”则视为隐藏,使用ls不会将其列出)-l 除文件名称外,还会将文件的形态、权限、拥有者、文件大小等资讯详细列出-t 将文件按照建立的时间先后顺序列出-S 按文件的大小进行排序目录操作——pwd查看当前工作目录pwd命令有两个选项,-L和-P-L 目录连接链接时,输出连接路径-P 输出物理路径目录操作——mkdir创建目录语法:mkdir [OPTION]...DIRECTORY...mkdir 目录名称 创建一个目录mkdir 名称1 名称2 创建多个目录mkdir -p 名称1/名称2/名称3 如果目录1、目录2不存在则一并创建目录操作——rm删除文件或者目录rm属于危险命令,使用rm删除的文件将不能够100%恢复语法:rm [OPTION] file-or-dir-f、--force 忽略不存在的文件,从不给出提示-i、--interacting 进行交互式删除-r、-R、--recursive 将rm参数中列出的全部目录和子目录均递归删除-v、--verbose 详细显示删除进行的步骤目录操作——rmdir用于删除空的目录语法:rmdir  [OPTION]..[FILE]...-p 循环读取目录操作——mv用于一定文件或者目录、有时用于文件命名mv命令用于移动文件或者目录如果源文件和目标文件在同一个父目录下。则mv命令的效果相当于给文件改名语法:mv [选项] 源文件或者目录 目标文件或者目录-b 如果会进行文件的覆盖,则会在文件覆盖时先进行备份-f 如果进行覆盖这里将不会进行询问-i 若目标文件已经存在,会询问是否覆盖-u 若目标文件已存在,且source比较新,才会更新(update)文件操作——touch创建文件、修改时间戳-a 改变档案的读取时间记录-m 改变档案的修改时间记录-d 设定时间的日期,可以使用各种不同的格式文件操作——cp复制文件或者目录语法: cp [OPTION]...SOURCE....DIRECTORY-a 此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容-p 除复制文件的内容外,还把修改时间和访问权限也复制到新文件中-r 若给出的源文件是一个目录文件,此时将复制该目录下的所有的子目录和文件-s 不复制文件,创建软链接-l 不复制文件,创建硬链接文件操作——cat读取文件的全部内容,或将几个文件合并为一个文件文件操作——head显示文件开头内容,默认打印出相应的开头10行文件操作——tail 用来显示文件的末尾内容,默认为10行文件操作——more 会一页一页显示内容方便阅读,空格去往下一页,b键返回上一页文件操作——less 读取文件内容,可以分屏显示,于more类似,但是使用less可以随意浏览文件,而且less在查看文件内容之前不会加载整个文件压缩文件操作——tar 用于打包文件方便数据移动语法:tar [OPTION]... [FILE]-c、--create 创建一个新的归档 -x、--extract、--get 从归当解出文件-f、--file=ARCHIVE 使用归当文件-z、--gzip、--gunzip、--ungzip 通过gzip过滤文档-C、--directory=DIR 改变目录到DIR-v、--verbose 详细的列出待处理的文件常用用法:tar cf base.tar dir1 把目录dir1及其下的所有内容打包tar xf base.tar 把包中的内容解压到当前目录tar tf base.tar 列出包中的内容tar xf base.tar -C  /test 解压到/tmp目录下 默认的话就在当前目录下压缩文件操作——gzip 对文件进行解压缩和压缩的命令同样是对文件压缩的操作,那么gzip和tar的区别是什么?首先我们先来区分两个概念:1、打包:将一堆文件或者目录变成一个总的文件压缩:将一个大的文件经过某种压缩算法变成一个小的文件为什么在linux中需要区分这些呢?这是因为在linux中的很多压缩程序只能针对一个文件进行压缩,所以,在进行一堆大文件压缩的时候就需要先进行打包才能进行压缩。这样我们就可以从tar和gzip的效果看出,tar可以将文档进行归当也可以进行压缩,而是gzip是为了方便用户而设计的可以在打包的同时进行文件压缩或文件解压gzip是linux系统中常用到的对一个文件进行解压缩和压缩的命令gzip可以用来压缩大的文件节省空间语法:gzip [参数] [文件或者目录]-d、--decompress、--uncompress 解压缩文件-f、--force 强制压缩文件,不会判断文件名是否存在以及该文件是否为符号连接-l、--list 列出压缩文件的相关信息-r、--recursive 递归处理,将指定目录下的所有文件及子目录一并处理-v、--verbose 显示指令执行过程查找操作——find 用来查找指定目录下的文件可以指定一些匹配条件,如按文件名,文件类型、用户或者时间戳查找文件语法:find [path] [experssion]-name 按照文件名进行查找-perm 按照文件权限来查找-user 按照文件属性查找文件-mtime -n +n 按照文件的更改时间来查找文件例如查找目录中更改时间在7日以前的普通文件find /test -type -f -mtime +7在7日以内的普通文件就是find /test -type -f -mtime -7查找操作——grep 查找文件里符合条件的字符串查找操作——which 该指令会在环境变量中$PATH中设置的目录里进行查找符合条件的文件查找操作——whereis 该指令可以在特定的目录中查找符合条件的文件,这些文件属于原始代码
  • [问题求助] MDK5中如何添加源码中的shell组件。
    想在mdk5中移植liteos模块中的shell组件。可是里面的配置不知道怎么回事。移植的lib文件都有那些?
  • [问题求助] STM32L431RCT6移植liteos shell
    STM32L431RCT6移植liteos有shell组件吗?有教程吗?怎么配置。
  • [开发应用] 如何定时analyse所有库所有表,或者特定库的所有表
    比如一个月,对全库全表,或者特定库的所有表analyse?是内部可以配置定时任务,还是编写shell脚本实现?如果shell脚本的话,如果采集到所有表的表名,并再配置成analys语句呢?
  • [互动交流] 【云服务器香港产品】【ssh功能】xshell登录不进去,ping不通
    【功能模块】【操作步骤&问题现象】1、防火墙已关闭2、端口已开启3,香港云ping内地也ping不通,ping谷歌可以ping通【截图信息】【日志信息】(可选,上传日志内容或者附件)
总条数:147 到第
上滑加载中