linux shell 能做什么?
不是很同意一楼的意见,linux shell特别是bash,跟windows下的BAT根本不是一个层次的东西,shell要更强大的多。
一般的除了非得用图形的操作,比如图像处理,打游戏,其它的基本上都是可以用shell来执行的。
shell就像名字的含义一样,是linux的一个外壳,linux的内核提供引擎,各种应用程序就是各种配件,而shell就是给你一个完整的驾驶室,提供操纵所有这些功能的界面。
文件管理,程序执行,文字处理,网络配置,服务启停,都可以用shell。
如果有双机集群,那么必然需要有一个状态检测,这个检测的脚本,一般也都是一个shell的脚本。
如果是远程服务器的话,那基本上没人会通过图形方式登录,一般都是用ssh或者telnet登录进去,那就更是只能用shell了。
除非是用作桌面,否则linux一般都会起各种服务,这些服务的启动,停止和状态检测,也都是一个个的shell脚本,即使通过图形方式来操作,最终也是调用这些脚本。
学好shell,是做好网络管理员的基本功。
linux下的 shell到底是什么啊
展开全部 在计算机科学中,是指“提供用户使用界面”的软件,通常指的是命令行界面的解析器。
一般来说,shell是指操作系统中,提供访问内核所提供之服务的程序。
一、shell的分类: 1、图形界面shell(Graphical User Interface shell 即 GUI shell) 例如:应用最为广泛的 Windows Explorer (微软的windows系列制作系统),还有也包括广为人知的 Linux shell,其中linux shell 包括 X window manger (BlackBox和FluxBox),以及功能更强大的CDE、GNOME、KDE、 XFCE。
2、命令行式shell(Command Line Interface shell ,即CLI shell) 例如:bash / sh / ksh / csh(Unix/linux 系统)(MS-DOS系统); cmd.exe/ 命令提示字符(Windows NT 系统); Windows PowerShell(支援 .NET Framework 技术的 Windows NT 系统)。
二、shell的命令描述: 1、使用用户的缺省凭证和环境执行 shell。
2、在UEFI环境下,EFI的shell环境提供了一组丰富的扩展和增强的命令,在以后的计算机中,传统的DOS界面将会被shell环境所取代,所有的.exe文件将不会在以后支持shell的环境中出现,取而代之的文件后缀是.efi。
...
关于Linux ,Bash ,Shell的概念问题
1.是2.区别大,你会写bash shell不代表你会写c shell,不过我觉得你会写一个shell脚本另一种你上手也很快,起码读懂应该问题不大。
你可以先学bash shell因为用的比较多而且可移植性强,bash 是shell的一种。
3.属于shell,只安装了bash shell就可以运行bash shell脚本,并不是针对某个系统或者发行版本。
shell这种东西可以随意安装的。
你用习惯哪个shell,就算初装系统里没有,你也可以单独安装一个4.给你推荐两本书《Bash shell高级脚本指南》《实战LINUX+SHELL编程与服务器管》shell编程,可以说直接反应出你对linux命令掌握的熟练度问题,什么情况下用哪种命令更符合你的工作需求,怎么简化脚本运行过程,优化脚本让它更有效率。
你在学习过程中必然会接触到sed,awk这种流编辑器。
然后你还得学习sed,awk。
渐渐地估计你就该选择一门更强大的编程语言,而不仅限于写shell脚本,比如选perl.python,php.C,或者什么语言...基本上都是这个过程。
linux shell 关联数组的一个小问题
linux 里有很多文档可以帮助学习!比如GNU bash, version 3.2.33(1)-release (i386-redhat-linux-gnu)These shell commands are defined internally. Type `help' to see this list.Type `help name' to find out more about the function `name'.Use `info bash' to find out more about the shell in general.Use `man -k' or `info' to find out more about commands not in this list.A star (*) next to a name means that the command is disabled. JOB_SPEC [&] (( expression )) . filename [arguments] : [ arg... ] [[ expression ]] alias [-p] [name[=value] ... ] bg [job_spec ...] bind [-lpvsPVS] [-m keymap] [-f fi break [n] builtin [shell-builtin [arg ...]] caller [EXPR] case WORD in [PATTERN [| PATTERN]. cd [-L|-P] [dir] command [-pVv] command [arg ...] compgen [-abcdefgjksuv] [-o option complete [-abcdefgjksuv] [-pr] [-o continue [n] declare [-afFirtx] [-p] [name[=val dirs [-clpv] [+N] [-N] disown [-h] [-ar] [jobspec ...] echo [-neE] [arg ...] enable [-pnds] [-a] [-f filename] eval [arg ...] exec [-cl] [-a name] file [redirec exit [n] export [-nf] [name[=value] ...] or false fc [-e ename] [-nlr] [first] [last fg [job_spec] for NAME [in WORDS ... ;] do COMMA for (( exp1; exp2; exp3 )); do COM function NAME { COMMANDS ; } or NA getopts optstring name [arg] hash [-lr] [-p pathname] [-dt] [na help [-s] [pattern ...] history [-c] [-d offset] [n] or hi if COMMANDS; then COMMANDS; [ elif jobs [-lnprs] [jobspec ...] or job kill [-s sigspec | -n signum | -si let arg [arg ...] local name[=value] ... logout popd [+N | -N] [-n] printf [-v var] format [arguments] pushd [dir | +N | -N] [-n] pwd [-LP] read [-ers] [-u fd] [-t timeout] [ readonly [-af] [name[=value] ...] return [n] select NAME [in WORDS ... ;] do CO set [--abefhkmnptuvxBCHP] [-o opti shift [n] shopt [-pqsu] [-o long-option] opt source filename [arguments] suspend [-f] test [expr] time [-p] PIPELINE times trap [-lp] [arg signal_spec ...] true type [-afptP] name [name ...] typeset [-afFirtx] [-p] name[=valu ulimit [-SHacdfilmnpqstuvx] [limit umask [-p] [-S] [mode] unalias [-a] name [name ...] unset [-f] [-v] [name ...] until COMMANDS; do COMMANDS; done variables - Some variable names an wait [n] while COMMANDS; do COMMANDS; done { COMMANDS ; }good luck
怎么学 linux shell
工作或者读书等)需要学习linux的人,需要系统的学习一下,最好有一本好的书来学习。
linux是世界各地的黑客们写出来的开源系统,对于热爱学习计算机技术(算法、数据结构、编程、操作系统……)的人来说,linux是一个天堂。
我个人就是完全因为兴趣而捣鼓linux,和工作不沾边。
有几种不同的学习:a)使用->;需要学习linux的一些历史、各种命令、桌面的操作、shell的知识b)编程->;学习linux的接口c)系统管理->;学习一些管理员需要掌握的命令d)内核、源码->;先要学好操作系统原理,然后慢慢钻研。
linux是一个很奇怪的东西,因为你知道的越多,你的问题就越多。
如果你将来用的上,那么学习linux自然有用。
如果用不上,学习linux的作用在于折腾你的精力、开拓你的思维、视野、提高自学能力。
从你付出的机会成本的角度来说,学习linux不合算,因为你应该把有限的时间用来学习对你更重要的东西,而不是不沾边的linux。
除非把linux当作一种爱好。
所谓“衣带渐宽终不悔,为伊消得人憔悴”。
自然是另一番感受。
当你用shell编写个自己能用上的脚本 你就知道有用拉而且还老有成就感拉比如你需要搜索全盘文件,把大写名字改为小写,这样的程序用几行shell就能写,但是无论C还是其它语言都非常麻烦,手工修改就更麻烦。
明白shell程序设计的用处吗,任何一种语言都有他自己的适用领域
请教linux下shell 中 set 的用法
set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。
使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。
set命令不能够定义新的shell变量。
如果要定义新的变量,可以使用declare命令以变量名=值的格式进行定义即可。
使用:set(选项)(参数)例如:declare mylove='Visual C++' #定义新环境变量 再使用set命令将新定义的变量输出为环境变量,输入如下命令: set -a mylove 标示已修改的变量,以供输出至环境变量。
-b:使被中止的后台程序立刻回报执行状态-C:转向所产生的文件无法覆盖已存在的文件-d:Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。
使用-d参数可取消。
-e:若指令传回值不等于0,则立即退出shell。
-f:取消使用通配符。
-h:自动记录函数的所在位置。
-H Shell:可利用"!"加<;指令编号>;的方式来执行history中记录的指令。
-k:指令所给的参数都会被视为此指令的环境变量。
-l:记录for循环的变量名称。
-m:使用监视模式。
-n:只读取指令,而不实际执行。
-p:启动优先顺序模式。
-P:启动-P参数后,执行指令时,会以实际的文件或目录来取代符号连接。
-t:执行完随后的指令,即退出shell。
-u:当执行时使用到未定义过的变量,则显示错误信息。
-v:显示shell所读取的输入值。
-x:执行指令后,会先显示该指令及所下的参数。
linux shell 怎么使用crypt函数
crypt是个密码加密函数,它是基於DataEncryptionStandard(DES)演算法。
crypt基本上是Onewayencryption,因此它只适用於密码的使用,不适合於资料加密。
char*crypt(constchar*key,constchar*salt); key是使用者的密码。
salt是两个字,每个字可从[a-zA-Z0-9./]中选出来,因此同一密码增加了4096种可能性。
透过使用key中每个字的低七位元,取得56-bit关键字,这56-bIT关键字被用来加密成一组字,这组字有13个可显示的ASCII字,包含开头两个salt。
crypt在您有自行管理使用者的场合时使用,例如会员网站、BBS等等。
范例一:crypt_word.c #include #include #include voidmain(intargc,char**argv) { if(argc!=3)exIT(0); printf("%sn",crypt(argv[1],argv[2])); } 编译 gcc-ocrypt_wordcrypt.c-lcrypt 检验 请先看您的/etc/passwd,找一个您自己的帐号,看前面两个字,那是您自己的salt。
接下来输入: ./crypt_wordyour_passwordsalt 看看它们是否相同(应该要相同,除非您加了cryptplugin或使用不同的crypt function,例如shadow、pam,这种状况下,加密字是不同的),另外检验看看他们是否为13个字。
您也可以利用Apache上所附的htpasswd来产生加密字做为验证。
linux shell命令怎么查找文件中指定字符串,并把这个字符串所在行和下...
展开全部 有两种写入方式: 1、grep -i "aaa" -A 1 1.txt | grep -v -e "--" >2.txt grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。
若不指定任何文件名称,或是所给予的文件名为“-”,则grep指令会从标准输入设备读取数据。
2、awk '/aaa/{getline var;print $1"\n" var}' 1.txt >2.txt awk语言的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取信息后,才能进行其他文本操作。
完整的awk脚本通常用来格式化文本文件中的信息。
linuxshell中引号的使用方法: shell使用引号(单引号/双引号)和反斜线("\")用于向shell解释器屏蔽一些特殊字符,反引号(")对shell则有特殊意义。
如:abc="how are you" (bash/pdksh) set abc = "how are you" (tcsh) 这个命令行把三个单词组成的字符串how are you作为一个整体赋值给变量abc. abc1='@LOGNAME,how are you!' (bash/pdksh) set abc1='$LOGNAME,how are you!' (tcsh) abc2="$LOGNAME,how are you!" (bash/pdksh) set abc2="$LOGNAME,how are you!" (tcsh)。
...
linux shell 和linux 命令的区别
shell翻译成壳的意思,它是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面。
shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,shell script,来实现一些较为复杂的功能。
总括,shell是linux命令集的概称,是属于命令行的人机界面。
Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁。
Shell既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Ken Thompson的sh是第一种Unix Shell,Windows Explorer是一个典型的图形界面Shell。
Shell 和Shell Script不是一回事,通常我们说的都是Shell Script。
Shell 编程跟java、php编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)Bourne Again Shell(/bin/bash)C Shell(/usr/bin/csh)K Shell(/usr/bin/ksh)Shell for Root(/sbin/sh)……shell是一个命令解释器,处于内核和用户之间,负责把用户的指令传递给内核并且把执行结果回显给用户,同时,shell也可以作为一门强大的编程语言。
关于Linux命令的介绍,看看《linux就该这么学》,具体关于这一章地址3w(dot)linuxprobe/chapter-02(dot)html 在Windows平台上,shell=cmd.exe(Command shell)用windows上的命令可以写一个批处理文件,点击执行,如 test.bat。
转载请注明出处51数据库 » linux shell wordcoun