导航:首页 > 程序命令 > shell终端命令

shell终端命令

发布时间:2023-03-30 19:07:39

㈠ shell脚本让进程在后台运行以及进程后台转前台

我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用 putty 远程连接到日本 linux 服务器。所以使程序在后台跑有以下三个好处:

1:我们这边是否关机不影响日本那边的程序运行。(不会像以前那样,我们这网络一断开,或一关机,程序就断掉或找不到数据,跑了几天的程序只能重头再来,很是烦恼)

2:不影响计算效率

3:让程序在后台跑后,不会占据终端,我们可以用终端做别的事情。

方法有很多,这里主要列举两种。假如我们有程序 pso.cpp ,通过编译后产生可执行文件 pso ,我们要使 pso 在 linux 服务器后台执行。当客户端关机后重新登入服务器后继续查看本来在终端输出的运行结果。(假设操作都在当前目录下)

方法1在终端输入命令

解释:将 pso 直接放在后台运行,并把终端输出存放在当前目录下的 log.file 文件中。

当客户端关机后重新登陆服务器后,直接查看 pso.file 文件就可看执行结果(命令:$ cat pso.file )。
方法2在终端输入命令:

解释: nohup 就是不挂起的意思,将 pso 直接放在后台运行,并把终端输出存放在当前

目录下的 pso.file 文件中。当客户端关机后重新登陆服务器后,直接查看 pso.file

文件就可看执行结果(命令: #cat pso.file )。

注:如果要使在前天执行任务放到后台运行,则先要用 ctrl+z 挂起该任务,然后用 bg 使之后台执行。
附:
在 Linux 中,如果要让进程在后台运行,一般情况下,我们在命令后面加上 & 即可,实际上,这样是将命令放入到一个作业队列中了:

对于已经在前台执行的命令,也可以重新放到后台执行,首先按 ctrl+z 暂停已经运行的进程,然后使用 bg 命令将停止的作业放到后台运行:

但是如上方到后台执行的进程,其父进程还是当前终端 shell 的进程,而一旦父进程退出,则会发送 hangup 信号给所有子进程,子进程收到 hangup 以后也会退出。如果我们要在退出 shell 的时候继续运行进程,则需要使用 nohup 忽略 hangup 信号,或者 setsid 将将父进程设为 init 进程(进程号为 1 )

上面的试验演示了使用 nohup/setsid 加上 & 使进程在后台运行,同时不受当前 shell 退出的影响。那么对于已经在后台运行的进程,该怎么办呢?可以使用 disown 命令:

另外还有一种方法,即使将进程在一个 subshell 中执行,其实这和 setsid 异曲同工。方法很简单,将命令用括号() 括起来即可:

注:本文试验环境为 Red Hat Enterprise Linux AS release 4 (Nahant Update 5) , shell 为 /bin/bash ,不同的 OS 和 shell 可能命令有些不一样。例如 AIX 的 ksh ,没有 disown ,但是可以使用 nohup -p PID 来获得 disown 同样的效果。

还有一种更加强大的方式是使用 screen ,首先创建一个断开模式的虚拟终端,然后用 -r 选项重新连接这个虚拟终端,在其中执行的任何命令,都能达到 nohup 的效果,这在有多个命令需要在后台连续执行的时候比较方便:

㈡ Xshell本地指令大全

很多软件在使用过程中都有快捷键,当然xshell也有,有因为xshell是一款 安全终端模拟软件 ,所以与普通的软件有丝丝的区别,它的快捷键是以指令形式展现的。

图1:xshell本地指令表现形式

一般来讲,Xshell提示在未连接远程主机的状态下出现在终端屏幕上。连接会话后可按“Ctrl+Alt+]”以转出本地提示。如要返回到远程主机模式输入“exit”或按“Ctrl+D”即可。

可使用如下指令:

|

指令

|

说明

|
| --- | --- |
|

help

?

|

在终端窗口显示指令目录。

|
|

new

|

打开新建会话属性对话框。

|
|

open [ session ]

|

已指定“ session ”时连接到相应会话,未指定时打开会话对话框。

|
|

edit [ session ]

|

已指定“ session ”时打开相应会话的会话属性对话框,未指定时打开默认会话的会话属性对话框。

|
|

list

|

显示当前作业directory可使用的会话相关信息和directory目录。

|
|

cd

|

更改当前作业的directory。

|
|

clear

|

清除画面、地址栏的历史记录、本地Shell命令提示的命令历史记录。

|
|

exit

quit

|

退出Xshell会话或返回到远程主机。

|
|

ssh [ user @] host [ port ]

|

以ssh协议进行连接。

|
|

sftp [ user @] host [ port ]

|

以sftp协议进行连接。

|
|

telnet [ user @] host [ port ]

|

以telnet协议进行连接。

|
|

rlogin [ user @] host [ port ]

|

以rlogin协议进行连接。

|
|

ftp [ user @] host [ port ]

|

以ftp协议进行连接。

|
|

ipconfig

|

执行Windows的ipconfig命令。

|
|

ping host

|

执行Windows的ping命令。

|
|

tracert host

|

显示至host的数据包路径。

|
|

netstat

|

执行Windows의netstat命令。

|
|

nslookup

|

执行Windows의 nslookup 命令。

|

㈢ Linux里面shell窗口命令Ctrl+s命令作用是什么

在Linux下,CTRL+S组合键是进行锁屏,键盘进行的输入也是存在的,只是没有显示

㈣ 超实用的adb与adb shell常用命令汇总

adb(android Debug Bridge),SDK自带的工具,可实现桥接功能,实现PC和android设备的交互

adb shell:基于Android linux系统操作,放在安卓设备的system/bin目录下,手机端的命令

一:adb常用命令

1. PC连接android设备

(PC与android设备连接同一个wifi,或处于同一个局域网)

连接:adb connect ip:5555

断开连接:adb disconnect ip

查看连接设备的信息:adb devices

获取设备的状态:adb get-state

2. 重启adb server

打开adb服务:adb start-service

关闭adb服务:adb kill-service

3. 安装卸载软件

安装:adb install apkpath(某个apk)

adb install -r :强制安装

卸载: adb uninstall package(可用adb shell pm list packages查看包名)

4. 打印日志

打印android系统日志:adb logcat

将日志打印并保存指定文件夹:adb logcat > /Users/apple/Desktop/log.txt

终止进程:control+C

打印mpsys,mpstate,logcat的输出,用于分析错误:adb bugreport

5. PC与android设备上文件复制

android设备上文件复制到PC上:adb pull

PC上文件推至android设备:adb push 

6.重新挂载system分区为可写,需要root权限./system分区默认挂载为只读,但有些操作比如给android系统添加命令,删除自带应用等需对系统进行写操作,得重新挂载为可写

adb shell

su

或:adb root

adb remount 重新挂载文件系统,获得可写的权限(默认情况是只有可读权限的),使用adb remount 的前提是要有root权限

7. 删除系统应用

adb root

adb remount

adb shell

cd system/app

rm *apk

二:adb shell命令

adb shell 进入系统子目录,exit 退出

1. pm命令

列出系统应用的所有包名:adb shell pm list packages 可用grep来过滤:adb shell pm list packages | grep 关键字

清除应用数据与缓存:adb shell pm clear <packagename>

2. am命令

启动应用:adb shell am start -n com.xxx.xxxxxxx|xxx.Activity(可通过adb shell mpsys activity activities | grep mFocusedActivity查看

强制停止应用:adb shell am force-stop <packagename>

3. input命令

模拟点击事件,点击坐标点(x,y):adb shell input tap x y

模拟滑动事件,从(x1,y1)到(x2,y2):adb shell input swipe x1 y1 x2 y2

发送文本内容:adb shell input text

模拟按下home:adb shell input keyevent KRYCODE_HOME

4. screencap命令

截屏:adb shell screencap

5. 查看网络状态命令

查看当前网络状态:adb shell netstat

通过配置文件配置和管理网络连接:adb shell netcfg

查看网络信息:ifconfig

测试网络联网状态:ping

5.其它相关命令

查看当前终端中进程:adb shell ps

获取cpu信息:adb shell cat /proc/cpuinfo

查看内存信息:adb shell cat /proc/meminfo

查看屏幕分辨率:adb shell wm size

查看设备ip地址:adb shell ifconfig | grep Mask

查看实时资源占用情况:adb shell top

㈤ shell终端怎么进入

linux 可以通过vi或vim命令进入shell编程模式,操作步骤如下:

1、首先在linux终端中创建一个shell脚本文件,例如shell.sh:

㈥ ‘Linux 干货’#1 终端与Shell(简明)

继 Git 后贵系的另一个暑培项目,讲授 Linux 的基本用法,恰好这学期“操作系统”课程实验需要用到 Linux,而且实验室的服务器也需要学习相关用法,故学之。

本文部分内容参考了清华 ZAH 同学的教程,部分参考了 刘遄 老师的《 Linux 就该这么学 》, 菜鸟教程-Linux 。

Linux,全称 GNU/Linux,是一套免费使用和自由传播的类 Unix 操作系统。相比于其他系统,Linux 更加稳定且有效率、更加安全、相对不耗资源……以至于几乎所有 长期稳定运行的网站服务器 上、在 处理大数据的集群系统 中,以及需要 协同工作的服务器环境 都采用 Linux 系统。

Linux 严格来说是单指操作系统的 内核 ,因操作系统中包含了许多用户图形接口和其他实用工具。如今 Linux 常用来指“基于 Linux 的完整操作系统”,内核则改以“Linux 内核”称之。

一些组织或厂商将 Linux 内核与各种软件和文档 包装 起来,并提供系统安装界面和系统配置、设定与管理工具,就构成了 Linux 的发行版本。

在学习 Linux 的过程中,有几个易混淆的概念:

命令行界面(Command-Line Interface,CLI)是在图形用户界面得到普及之前使用最为广泛的用户界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以执行。也有人称之为字符用户界面(Character User Interface,CUI)。

一般来说,在 服务器 中较多采用的是 CLI 界面,或许有以下几点原因:

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 等系统的桥梁,如同“ ”一般。它的本质是一个 命令解释器 ,将用户输入的命令(符合 Shell 语法)处理成对应 操作系统的控制命令 ,处理完毕后再将结果反馈给用户。

不同操作系统下面的 Shell 种类众多,常见的有:

Ken Thompson 的 sh 是第一种 Unix Shell,本教程关注的是 Bash,也就是 Bourne Again Shell,Bash 也是大多数 Linux 系统默认的 Shell。

终端 (Terminal),是一种用来让用户输入数据至计算机,以及显示其计算结果的机器。早期的终端通常就是一台 电子打字机 (Teletypewriter, TTY),后来随着计算机的发展,打字机被键盘和显示器取代,而 GUI 界面也成了主流。

于是,这时候我们就需要一个程序来模拟传统终端的行为,即 终端模拟器 (Terminal Emulator),当用户打开终端模拟器时,实际上是进入一个 会话进程 (Session)。终端模拟器有很多,这里举几个经典的例子:

在 Linux 系统中打开终端时,会看到一个提示符,通常类似 hewei@hewei-VirtualBox ~$ 。在提示符下,命令会被 Shell 环境 解析并反馈 到终端中。

提示符是 Shell 最主要的 文本接口 。它告诉你,你的主机名是 hewei-VirtualBox ,你现在的身份是 hewei 并且你当前的 工作目录 (Current working directory)是 ~ (默认在 /home/hewei/ 用户目录)。

$ 符号表示您现在的身份不是 root ,输入如下命令可以暂时切换到 root 权限:

输入密码后,可以看到提示符变成了 root@hewei-VirtualBox:/home/hewei# ,其中 # 符号就是超级用户权限的标志。再输入 exit 即可退回普通用户身份。

在 Git学习笔记 #1 基础知识介绍 中,已经简单介绍了命令行界面的一些使用技巧,这些命令在 Linux 系统的 Bash 中同样使用。这里罗列出 Linux 常用快捷键:

常见的执行 Linux 命令的格式是这样的: 命令名称 [命令参数] [命令对象] 。其中,命令参数用于对命令进行调整,使之更好地贴近需求,参数分为 长格式 短格式 ,如: man --help , man -h 。短格式之间可以合并,合并后仅保留一个减号即可。

在 Linux 相关的手册中,我们会约定俗成地将可选择的、非必需的参数使用 中括号 引起来,而命令所要求的、必须有的参数或对象值,则不带中括号。

此外,要注意 Linux 系统中的命令、参数、对象都是 严格区分大小写 的。

Shell 除了是一个 交互式 (Interactive)的命令解释器,它还是一种 程序设计语言 (Shell Script)。它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。

用 Shell 编写的 脚本文件 即 .sh 文件,它能在 Shell 环境下运行,fork 出一个 子进程 ,调用系统内核来执行 批处理 (Batch)的系统控制。在文件的第一行,通常是 #!/bin/bash ,这句话约定了这个脚本需要哪种 Shell 环境来执行。

通过如下命令就可以执行一个 Shell 脚本:

下面罗列了部分常用指令与参数的介绍,更多功能请在帮助手册中检索。

㈦ 如何用shell 自定义终端命令

alias ad=’git add’
alias st=’git status’
alias stsh=’git stash’
alias ci=’git commit’
alias br=’git branch’
alias bra=’git branch -a’
alias co=’git checkout’
alias dif=’git diff’
alias po=’git push’
alias poo=’git push origin’
alias pod=’git push origin develop’
alias por=’git push origin release’
alias pom=’git push origin master’
alias pl=’git pull’
alias plo=’git pull origin’
alias pld=’git pull origin develop’
alias pldreb=’git pull origin develop –rebase’
alias plr=’git pull origin release’
alias plm=’git pull origin master’
alias pu=’git pull upstream’
alias fch=’git fetch’
alias reseth=’git reset –hard’
alias reb=’git rebase’
alias rebc=’git add . && git rebase –continue’
alias reba=’git rebase –abort’
alias log=’git log’
alias kk=’gitk’

阅读全文

与shell终端命令相关的资料

热点内容
不卡顿的电视剧官网 浏览:279
凿空者之雪域天马演员表 浏览:214
怎么关掉安卓手机触摸上方黑屏 浏览:749
男主娶母女 浏览:482
阁瑞斯压缩机漏电怎么处理 浏览:19
有个叫阿水的在一个岛上的电影叫什么 浏览:161
韩剧食物链酒吧老板娘的演员叫什么 浏览:485
linux关闭java进程 浏览:886
想学编程报什么专业 浏览:22
阿里云服务器带宽哪里看 浏览:18
python怎么验证等式 浏览:564
喋血劫花磁力下载 浏览:37
房地产开发管理pdf 浏览:794
日韩美女网站。 浏览:502
舞会电影未删减版 浏览:988
什么中web服务器 浏览:801
php开发实战权威指南光盘 浏览:947
永新优品app怎么找不到 浏览:245
海外服务器如何找客户 浏览:579
单片机学51 浏览:158