Unix:系统环境变量和SHELL变量

Unix Shell 学习总结 -- Unix学习总结之一 学习Unix有很长一段时间了,下一段时间可能很少有机会搞Unix了!我毕业设计要用MFC,进单位以后也是Windows下的编程!总结一下吧,也算是对Unix的学习告一段落!书籍:《Unix Text Book》一、运行Bourne shell脚本1、$chmod u+x script_file2、/bin/sh script_file二、shell变量及相关命令shell变量的两种类型,s 阅读详情

一、SHELL 的START FILES

不管你的login shell是那一种shell,每一个shell都有它自己的start files,我们设定理想环境时所需使用的指令与设定的变量,都可以写在这些start files中,在login时先後加以执行,这些start files的名称分别是:

SHELL START FILES

sh           /etc/profile 
               $HOME/.profile
bash      /etc/profile 
               $HOME/.profile(or $HOME/.bashrc)
csh         None
                $HOME/.cshrc & $HOME/.login
tcsh         None
                 $HOME/.cshrc(or $HOME/.tcshrc) & $HOME/.login

如果这些文件都存在,那麽它们的执行顺序将是:
1. sh系列 /etc/profile -->; $HOME/.profile
2. csh系列 $HOME/.cshrc -->; $HOME/.login

在这些start files中,/etc下的profile是系统管理者为大家设定的,一般用户无法做任何更动,如果对系统管理者的设定觉得不够或不符需要,则可在个人帐号下的.profile、.cshrc、.login增加或修正,尤其是对csh及tcsh的用户而言,因为在/etc下并没有start files,所以也不会有系统管理者设定好的环境可以使用,用户就必须自行设定所需要的所有的变量与指令,否则常会有寸步难行的感觉,最常见的如许多指令都因找不到而不能用(因为没有设path)、键无法使用 (因键的作用没有定义)...等。

二、常见的需求与常用的指令

当我们在UNIX环境中工作,常会为了使自己使用时更方便而产生某些需求,这些常见的需求及其设定方式如:

1. 希望键能有作用

在$HOME/.profile或$HOME/.cshrc中加上
stty erase "^H"

2. 希望在UNIX环境中能使用中文

在$HOME/.profile(sh系列)中加上
stty -istrip cs8
LC_CTYPE=ISO_8859_1
export LC_CTYPE
在$HOME/.cshrc(csh系列)中加上
stty -istrip cs8
setenv LC_CTYPE iso_8859_1

3. 希望能有像DOS系统中DOSKEY的功能
只要是使用bash及tcsh即具备此项功能。

4. 希望能使用工作站上的汉书编辑器(he)

在$HOME/.profile(sh系列)中加上
LANG=big5
export LANG
在$HOME/.cshrc(csh系列)中加上
setenv LANG big5

5. 希望提示符号能随着路径更动而改变

在sh及csh中并无法做到这个功能,而在bash及tcsh中的设定则分别是:
bash:在$HOME/.profile中加上
PS1='`PWD`>; '
或 PS1="w>; "
tcsh:在$HOME/.cshrc中加上
set prompt='%~>; '

除了上面所提到针对特殊需要所做的设定之外,在做环境设定时常用到的指令还有:

1. stty
设定对输入(input)的定义与如何做输出,这个指令的叁数极为众多,我们可用

stty -a
看到所有的叁数及其设定,在这些叁数中,常用的有:

istrip (-istrip)
将所有的输入截取成7 bits的资料,然而中文的资料都是8 bits的,所以当需要使用中文时,请加上'-istrip'这个叁数,以避免输入的资料被破坏。

cs7 cs8
设定每一字元的资料都是7 bits或8 bits的资料, 因此在需要使用中文时,通常会有如下的设定:
stty -istrip cs8
iuclc (-iuclc)
将标准输入的大写字母视为小写(或取消)。

olcuc (-olcuc)
将小写的字母以大写型态输出(或取消)。

echo (-echo)
将所有的输入由标准输出处输出(或取消输出,即在萤幕上看不到自己的输入)。

stty除了这些叁数外,还可以用来定义某一个键的特定功能,如:
stty erase "^H"
stty kill "^U"

2. mesg y (mesg n)
若在工作时不希望被talk等讯息所打扰,可下'mesg n' 指令,以避免外来迅息中断正要进行的工作('mesg y'则是恢复与外界的沟通)。

3. umask [nnn]
设定新增文件或目录的属性(mode),新文件或新目录的mode为系统管理者以create所设定的属性减去nnn,如系统管理者所设定的文件权利状态是777,而用户又自行设定了umask 022 则这个用户在他个人帐号下的每一个新产生的文件的权利状态都将会是755(777-022)。

4. Function 与 Alias
对於一连串或某一指令,我们可以用function的方式(在sh、ksh、bash中)或alias指令(在csh、tcsh、ksh、bash 中),用一简短字串来代替这一个或一连串的指令,function的用法如:

vi(){
mesg n
/usr/ucb/vi $*
mesg y
}

其中,'vi'是function的名称,{}之间是'vi'这个function所包含的指令内容,而要注意的是:function的名称不能与shell的内键指令(builtin)名称相同,否则这个function即无法成立。

同样的功能,alias指令的用法如:

alias vi 'mesg n; /usr/ucb/vi !*; mesg y'

其中vi即是''中所包含字串的别名,别名与各shell的builtin名称可以一样(alias本身也是一个内键指令)。

若我们在某一shell中同时建立一名称相同的function与alias(如在bash中),则alias的执行次序优先於function的执行。

三、常用变量设定

在UNIX环境中的变量可分为两类,一是环境变量(Enviroment Variable)、一是shell变量(Shell Variable),二者之间的不同处在於:环境变量不会因为shell间的更替而失去这个变量的作用,如PATH是一个环境变量,因此,即使您在设定好PATH之後再执行另一个shell(如原来是用sh、而後在sh环境中再执行csh),PATH这个环境变量仍能继续作用,而shell变量(如csh的cwd)则是只有在特定的shell下才有作用,一执行其他shell就失去作用。

在sh及csh二系列各有其不同的设定变量的方式,为:

1. Bourne Shell系列
[VAR]=[STRING or NUMBER]
export [VAR]

如果当我们离开shell、进入另一个程式(如tin)之後,仍需要使用这个变量,则除了设定这个变量的值外,还需要以'export'指令加以宣告,如设定萤幕型态的变量TERM就需以'export'来宣告。

2. C Shell系列
set [var] = [STRING or NUMBER]
setenv [var] [STRING or NUMBER]

其中'set'是单纯设定变量值,'setenv'则除了设定变量值外,还包含了类似sh中'export'的功能。

而无论是Bourne Shell或C Shell,它们都有一些基本的、共同的常用变量,如:

1. PATH

设定可执行文件的寻找路径,若现行目录也要包含在寻找的路径中,则需在设定路径时给予一'.',表示现行目录亦包含在寻找的路径中,如:

PATH=.:/bin:/usr/local/bin:/usr/ucb
或
set path=(. /bin /usr/local/bin /usr/ucb)

2. EDITOR

设定想要使用的编辑器,如
EDITOR=/usr/ucb/vi
或
setenv EDITOR /usr/ucb/vi

3. HOME

设定个人帐号home directory的所在位置,通常在login时即叁考/etc/passwd而给予一设定值,因此除非用户有某些特殊需求,通常不会重新设定。

4. SHELL

同样是在login时即会叁考/etc/passwd的内容而自动设定,用户即使重新设定这个变量的内容,对帐号的使用也不会有任何影响。

5. 提示符号的设定

在sh 中:
PS1="[STRING]"
PS2="[STRING]"
在csh中: set prompt="[STRING]"

当然以上所列的只是使用得较为广泛的变量,若您觉得这些不够用,可用man sh、man csh、man tcsh、man bash指令查阅各shell的说明,在其中您将可看到各个shell所包含的变量及各变量的用法。

若不清楚某一变量的设定内容,可用'echo $[VAR]'来观察变量的内容,如:

echo $PATH
四、SHELL 环境的异动
前面所提到start files中的设定将在用户login时执行,但当我们要在线上直接改变所使用的shell(如直接执行'csh'或'exec csh',此时不会执行start files)或是要改变设定的内容,在编修了start files或script files之後,可利用下列指令将环境更新,而不必重新login:

. [script file] (在sh 系列的shell中)
source [script files] (在csh系列的shell中)

直接执行一个script file与用'.'、'source'指令执行各有其不同的效果,我们可建立一内容为 cd / (或cd [DIR]) 的script file来观察它们之间的差异:

因script file的执行环境是一内定或自定的subshell(可在script file的第一行用类似'#!/bin/csh'指令加以设定),所以它的直接执行并无法真正将shell环境的工作目录切换到/,而script file一结束,subshell即不存在、'cd /'指令的效果也告消失;而用'.'或'source'执行则是真正将shell的工作环境下的工作目录更换到/,不会因为script file的结束而使文件中指令的效果消失。

export 是一个在 Unix 和类 Unix 系统(比如 Linux 和 macOS)中常用的 shell 命令,主要用于设置或导出环境变量。 是一个在 Unix 和类 Unix 系统(比如 Linux 和 macOS)中常用的 shell 命令,主要用于设置或导出环境变量。dirname: 这是一个命令,它从给定的完整路径中提取目录部分。例如,如果路径是 /a/b/c,dirname 将返回 /a/b。命令是 shell 编程和命令行环境中的一个重要工具,用于确保程序和脚本可以访问必要的环境变量。$PWD: 这是一个特殊的环境变量,代表“当前工作目录”的完整路径。): 命令替换,它执行括号内的命令,并将输出作为字符串返回。在脚本中,你可以通过。 阅读详情

相关推荐

掌握UNIX Shell:从交互模式到脚本编程

本文深入探讨UNIX Shell的工作原理及其在命令行交互、编程模式和自定义会话中的应用。从基础命令执行到环境变量配置,再到Shell编程语言的特性,本文提供了全面的UNIX Shell使用指南。

weixin_33622085的博客 647

Unix的环境变量(转)

Unix的环境变量(转)[@more@]一、SHELL 的START FILES 不管你的login shell是那一种shell,每一个shell都有它自己的start files,我们设定理想环境时所需使用的指令与设定的变量...

cudao7505664的专栏 160

配置Redhat AS3 cshrc 脚本

配置Redhat AS3 cshrc 脚本,个人觉得很实用,在配置virtuso 的icfb时,而且在里面可以加载一个calibre菜单!

shell命令学习

## CURL命令学习    一、命令描述:使用curl命令可以帮助我们在终端使用计算机网络中应用层的一些协议,比如DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、 LDAPS、 POP3、POP3S、 RTMP、 RTSP、 SCP、 SFTP、 SMTP、 SMTPS、 TELNET and TFTP。使用该命令时,终端将处于无法与外部交互,阻塞在命令执行阶段。curl命令可以帮助我们实现一些简单的操作,例如文件传输与恢复、使用get 或 pos

the_boy_like_stu的博客 5978

基于JAVA的GB28181实现之SIP服务核心组件解析

本文深入解析了基于JAVA的GB28181标准中SIP服务的核心组件实现,包括协议栈选择、消息处理引擎、事务管理器等关键技术点。通过实战案例分享海康威视、大华设备的特殊处理技巧,并提供性能优化和常见问题排查指南,帮助开发者高效构建稳定的视频监控系统。

weixin_30892037的博客 264

【算法设计与分析】期末复习题(超详细)

刚刚整理了一下电脑的文件,发现了这份上学期的算法设计与分析期末复习题,有需要的文后自取。

a1234567822的博客 6616

c linux运行exe,C语言中没有main函数生成可执行程序的几种方法

1、define预处理指令这种方式很简单,只是简单地将main字符串用宏来代替,或者使用##拼接字符串。示例程序如下:#include #define begin mainint begin(void){printf("Hello, World!\n");return 0;}#include #define begin m##a##i##nint begin(void){printf("Hello...

weixin_29800471的博客 735

当今用于探测和阻止无人机的 10 种反无人机技术

利用反无人机技术应对无人机威胁。

网络研究观 3545

linux脚本 prompt,求教关于SHELL提示符设置的问题

关于SHELL提示符设置的问题(sh,ksh),我想在提示符前加上当前的工作路径。按几种方法设置了PS1变量以后均只能显示初始路径。|justusePS1(PS2)这得视你的 shell 而定。有些 shell 很容易,有些 shell 很难,有些根本办不到。C Shell (csh):将以下的东西加入你的 .cshrc 里。alias setprompt 'set prompt="${cwd...

weixin_29310853的博客 553

Unity安卓打包实战:SDK与JDK配置全攻略

本文详细介绍了Unity安卓打包过程中SDK与JDK的配置方法,包括工具下载、安装步骤、环境变量设置及常见错误排查。通过实战指南帮助开发者快速完成Unity安卓打包环境搭建,提升开发效率。

weixin_30338481的博客 420

VulnHub靶机渗透实战(详细思路讲解)

使用kali中的namp工具扫描开放端口,这时kali会用一个端口号向目标主机的65535个端口发送TCP连接建立请求,回应了ack=1,syn=q的端口就是开放端口号,这里可以看到21,22,80,3306号端口是开放的。可以看到这里得到了很多哈希,带*号的是禁用的或者是空密码,将三个不带星号的密码复制下来,创建一个shell.txt文档,将三个密码复制进去。这里看到我们是没有成功进入这个网页的,应该是目录的问题,我们将目录修改一下,但是没有显示出来,可能是编码问题,再回到我们找到的源码。

weixin_65891791的博客 2549

linux 查看进程cwd,linux shell 脚本查找进程cwd 求解

root@center1:~/douyin/DYSECOO# ps -ef|grep msg_testroot 30228 29891 2 14:02 pts/4 00:00:40 python3 msg_test.py上面是通过linux 命令查找得到的进程,然后通过进程查找得到下面的,我想要cwd 这个目录 ,linux 脚本如何写呢?root@center1:~/douyin...

weixin_39559382的博客 2020

FPGA实战:从零构建eMMC控制器(Verilog篇)

本文详细介绍了如何使用Verilog从零构建FPGA上的eMMC控制器,涵盖eMMC接口基础、命令系统解析、关键模块设计及性能优化技巧。通过实战案例,帮助开发者掌握高速数据存储解决方案,提升嵌入式系统开发能力。

weixin_26802933的博客 298

Unix系统环境变量和Shell变量

 一、SHELL 的START FILES 不管你的login shell是那一种shell,每一个shell都有它自己的start files,我们设定理想环境时所需使用的指令与设定的变量,都可以写在这些start files中,在login时先后加以执行,这些start files的名称分别是: SHELL START FILES sh           /etc/profile

prayforever的专栏 892

Orange3实战教程:转换---预处理

部件提供了多种预处理方法,这些方法可以在单个预处理流程中组合使用。某些方法也可作为独立部件提供,支持更高级的技术和参数调整。连接到测试与评分:在交叉验证的每个批次中应用预处理器,随后学习器的预处理器会作用于预处理后的子集。连接到学习器:覆盖学习器的默认预处理流程,仅应用自定义流程(各学习器的默认步骤详见其文档)。直接连接到原始数据并输出预处理后的数据集,可能导致模型过拟合。:从原始数据中随机选择固定数量或百分比的特征,主要用于高级测试或教学用途。的预处理器输入,同时传入数据和学习器(如。

err2008的专栏 148

Codex 调试记录获取完全指南:日志查看、工具调用与实战排查教程

本文主要介绍了Codex 调试记录获取完全指南:日志查看、工具调用与实战排查教程,希望能对使用Codex的同学们有所帮助。 文章目录 1. 背景 2. 实战教程

weixin_43178406的博客 6万+

第五章_进程 : Unix系统环境变量

函数getenv和putenv等 Unix系统的环境变量 Unix是一个多用户的操作系统,每个用户登录系统之后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的。这个默认的环境实际上就是一组环境变量的定义,用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。 环境变量一般用大写加下划线命名(例如,PATH、ORACLE_HOME )。环境变量就相当于一个指针,当我们要查看指针所指向的值的时候需要解引用。同样的,当我们想要查看环境变量里面的值的时候,需要在前面加 $ 引用。 linu

matafeiyanll的博客 861

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

UNIX内核和Shell的交互方法

任何发明都具有供用户使用的界面。UNIX供用户使用的界面就是Shell(DOS的command熟悉吧,但UNIX的要强大的多)。 Shell为用户提供了输入命令和参数并可得到命令执行结果的环境。 为了不同的需要,UNIX提供了不同的Shell。        启动UNIX时,程序UNIX(内核)将被调入计算机内存,并一直保留在内存中直到机器关闭。在引导过程中,程序 init将进入后台运行一直

3109

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Unix知识:shell指令速成法

如何成熟练的用户,他可以定制自己的shell,用户可以在同一台机器上使用不同的shell。如:学校的教职员工和学生默认使用 tcsh shell。ubuntu用bash等。

gongdiwudu的专栏 5199

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

UNIX下C语言编程与实践27-UNIX 环境变量:系统与用户环境变量的设置与 C 程序获取方法

本文全面解析UNIX环境变量的管理与应用,涵盖核心概念、分类、操作方法和常见问题。环境变量作为键值对动态存储配置信息,实现程序与环境的解耦,提升可移植性。文章详细区分系统级和用户级环境变量,介绍shell中的查看与设置方法(env、export等命令),以及C程序通过environ、getenv、putenv等接口的操作。重点剖析环境变量的继承机制(父进程→子进程单向传递)和典型应用场景。同时提供常见问题解决方案,如PATH设置错误、变量不生效等。掌握环境变量管理是开发可移植UNIX程序的基础技能。

文石_2009的博客 419

从入门到精通:UNIX shell程序超详细攻略

本文系统介绍了UNIX Shell编程的基础知识和实用技巧。主要内容包括:Shell的基本概念与作用,环境准备和脚本格式;语法基础如变量、运算符、流程控制和函数;实战案例涵盖文件处理、系统监控和数据备份等场景;进阶技巧包括调试方法、性能优化和代码规范。文章通过大量示例演示了Shell脚本在不同场景下的应用,强调了其在自动化运维中的重要性。最后鼓励读者继续深入学习,探索Shell更强大的功能。

大雨淅淅的博客 1242

第12章 使用 Shell:变量和选项

本文是《UNIX 大学教程》第12章 Shell 的笔记

李斯维的博客空间 978

[Shell] [笔记]UNIX/Linux/OSX中的Shell编程

UNIX/Linux/OSX中的Shell编程(第4版) Stephen G. Kochan Patrick Wood著 文章目录UNIX/Linux/OSX中的Shell编程(第4版)基础1. 使用文件2. 使用目录3. 文件名替换*? 或 [][!chars]4. 文件名中的空格5. 标准输入/输出和I/O重定向6. 标准错误7. 管道8. Shell9. 正则表达式10. 常用字符的八进制...

Blanchedingding的博客 2475

Unix系列shell程序编写(上)

*Shell是什么?   任何发明都具有供用户使用的界面。UNIX供用户使用的界面就是Shell(DOS的command熟悉吧,但UNIX的要强大的多)。 Shell为用户提供了输入命令和参数并可得到命令执行结果的环境。   为了不同的需要,UNIX提供了不同的Shell。现在的UNIX大部分都支持BourneShell,以下教程就以BourneShell(Bsh)为例,一步步的领略UNIX Sh

顺顺利利的专栏 1387

[Linux] Shell (一):认识shell和shell变量

什么是shell? Shell,直译过来就是贝壳的意思。对于用户和系统内核来说,Shell就好比中间的一层“壳”,用户不能直接操作内核来作业,但可以通过可接收命令的程序执行命令来操作内核。这个接收并执行命令的程序就可以叫做shell了。 在维基百科中是这样解释的:一种壳层与命令行界面,是UNIX操作系统下传统的用户和计算机的交互界面。 普通意义上的shell就是可以接受用户输入命令的程序。它...

FightFightFight的博客 765

【 shell 编程 】第1篇 变量

【 shell 编程 】第1篇 变量

guanguan12319的博客 536
上一篇: UNIX:Awk手册
下一篇: UNIX:grep正则表达式
prstat
博客等级 码龄19年 4粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值