linux shell知识汇总

Linux面试题-shell shell试题 阅读详情

方法一:利用while do循环,举例,while true;do ls;sleep 1;done 

方法二:利用for循环,举例1,for((a=1;a<=10;a++));do echo "haha" ;done

                                     举例2,for i in {host1,host2,host3};do ping -c 4 $i;done

2、shell中a++的写法

a=1  

a=$(($a+1))  

a=$[$a+1]  

a=`expr $a + 1`  

let a++  

let a+=1  

3、g e t o p t s

g e t o p t s可以编写脚本,使控制多个命令行参数更加容易。g e t o p t s用于形成命令行处理标 
准形式

实例:

#!/bin/bash
 
while getopts "a:b:" opt; do
  case $opt in
    a)
      echo "$OPTARG" 
      ;;
    b)
      echo "$OPTARG"
      ;;
    \?)
      echo "Invalid option: -$OPTARG" 
      ;;
  esac

done
执行结果:

[root@localhost ~]# sh getopts.sh -a hello -b xixi
hello
xixi
 

4、${ }

假设我们定义了一个变量为:
file=/dir1/dir2/dir3/my.file.txt

可以用${ }分别替换得到不同的值:

${file#*/}:删掉第一个/ 及其左边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:删掉最后一个/  及其左边的字符串:my.file.txt
${file#*.}:删掉第一个.  及其左边的字符串:file.txt
${file##*.}:删掉最后一个.  及其左边的字符串:txt
${file%/*}:删掉最后一个 /  及其右边的字符串:/dir1/dir2/dir3
${file%%/*}:删掉第一个/  及其右边的字符串:(空值)
${file%.*}:删掉最后一个 .  及其右边的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:删掉第一个 .   及其右边的字符串:/dir1/dir2/dir3/my

5、basename

basename 是去除目录后剩下的名字

6、dos2unix

是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为\r\n ,而Unix&Linux文件的换行符为\n. dos2unix命令其实就是将文件中的\r\n 转换为\n。

7、while read line

cat 1.txt| while read line                 
      do  echo "haha"
      done

 while read line                 
      do  echo "haha"
      done < 1.txt


8、tr命令

tr命令不能从文件中读取数据,只能从标准输出中获取数据,结果写到输出设备。

tr命令可以批量转换或删除指定的字符。

语法:

tr [选项]  字符集1 字符集2

选项:

-d:删除指定的字符集1的东西

-s:压缩字符集1中字符。一排重复的字符会压缩成一个

-t:字符集2 替换 字符集1,不加选项同结果。

-c:保留字符集1的字符,其他的字符用字符集2替换。

字符集:

[a-z][A-Z][0-9]:很好理解的范围。

[xx*n]:表示xx出现n次

和所有元字符

实例:

去字符的重复 -s。s选项可以压缩文本中连续出现的字符只保留一个。

[root@ams d6]# echo "hhhhi,woooorllld" > 2.txt

[root@ams d6]# tr -s [a-z]  < 2.txt

hi,world

去除空行

[root@ams d6]# echo -e "aa\n\n\n\n\naa" > 2.txt  

[root@ams d6]# tr -s "\n" < 2.txt  

aa

aa

大小写转换 -t。用第二个字符集 替换 第一个字符集。

[root@ams d6]# ls | tr 'a-z' 'A-Z'

1.TXT

2.TXT

删除指定字符 -d。单个字符直接引用起来就可以,多个字符需要用中括号括起来。

[root@ams d6]# date | tr -d "[0-9] [:]"

WedSepCST

9、shell 中的$0 $1 $* $@ $# $$ $? $() $(())

$0: 脚本本身文件名称

$1: 命令行第一个参数,

$2为第二个,以此类推

$*: 所有参数列表$@: 所有参数列表

$#: 参数个数

$$: 脚本运行时的PID

$?: 脚本退出码,以及获取函数的返回值,请看以下实例

#!/bin/bash

function add(){

return `expr $1 + $2`

}

add 23 50 #调用函数

echo $? #获取函数返回值

∗与@的区别

当命令行为test.sh 1 2 3"$*“表示"1 2 3”"$@“表示"1” “2” “3”

二者没有被引号括起来时是一样的都为"1 2 3",只有当被引号括起来后才表现出差异

$()  等同于: ··(反引号):运行一段命令

$(()) 进行数字运算 

# a=3;b=2;c=5

# echo $((a+b*c))

10、shell-if表达式(-f,-d,-s,-r,-w,-x,-eq,-ne,-ge,-gt,-le,-lt )

原文链接:shell-if表达式(-f,-d,-s,-r,-w,-x,-eq,-ne,-ge,-gt,-le,-lt )_打卤的博客-优快云博客

文件表达式
if [ -f file ] 如果文件存在
if [ -d … ] 如果目录存在
if [ -s file ] 如果文件存在且非空
if [ -r file ] 如果文件存在且可读
if [ -w file ] 如果文件存在且可写
if [ -x file ] 如果文件存在且可执行

整数变量表达式
if [ int1 -eq int2 ] 如果int1等于int2
if [ int1 -ne int2 ] 如果不等于
if [ int1 -ge int2 ] 如果>=
if [ int1 -gt int2 ] 如果>
if [ int1 -le int2 ] 如果<=
if [ int1 -lt int2 ] 如果<

字符串变量表达式
If [ $a = $b ] 如果string1等于string2
字符串允许使用赋值号做等号
if [ $string1 != $string2 ] 如果string1不等于string2
if [ -n $string ] 如果string 非空(非0),返回0(true)
if [ -z $string ] 如果string 为空
if [ $sting ] 如果string 非空,返回0 (和-n类似)

s​h​e​l​l​中​条​件​判​断​i​f​中​的​-​z​到​-​d​的​意​思
[ -a FILE ] 如果 FILE 存在则为真。
[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。

[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。

[ -d FILE ] 如果 FILE 存在且是一个目录则为真。

[ -e FILE ] 如果 FILE 存在则为真。
[ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。

[ -g FILE ] 如果 FILE 存在且已经设置了SGID则为真。
[ -h FILE ] 如果 FILE 存在且是一个符号连接则为真。

[ -k FILE ] 如果 FILE 存在且已经设置了粘制位则为真。 [

-p FILE ] 如果 FILE 存在且是一个名字管道(F如果O)则为真。

[ -r FILE ] 如果 FILE 存在且是可读的则为真。

[ -s FILE ] 如果 FILE 存在且大小不为0则为真。
[ -t FD ] 如果文件描述符 FD 打开且指向一个终端则为真。

[ -u FILE ] 如果 FILE 存在且设置了SUID (set user ID)则为真。

[ -w FILE ] 如果 FILE 如果 FILE 存在且是可写的则为真。

[ -x FILE ] 如果 FILE 存在且是可执行的则为真。

[ -O FILE ] 如果 FILE 存在且属有效用户ID则为真。

[ -G FILE ] 如果 FILE 存在且属有效用户组则为真。 [ -L FILE ] 如果 FILE 存在且是一个符号连接则为真。
[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。
[ -S FILE ] 如果 FILE 存在且是一个套接字则为真。
[ FILE1 -nt FILE2 ] 如果 FILE1 has been changed more recently than FILE2,or 如果 FILE1 exists and FILE2 does not则为真。
[ FILE1 -ot FILE2 ] 如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真。
[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。

[ -o OPTIONNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。

[ -z STRING ] “STRING” 的长度为零则为真。
 

11、判断字符串为空

if [ -z $str ];then
    echo "是空字符串"
fi

if [ "$str" ];then
   echo "非空"
else
    echo "空"
fi

if [ test -z "$str" ];then
   echo "空"
else
    echo "非空"
fi

if [ !-n  "$str" ];then
   echo "空"
else
    echo "非空"
fi

12、shell获取当前路径

CURRENT_DIR="$(cd "$(dirname "$0")"; pwd)"

13、内部字段分隔符的用法

内部字段分隔符(Internal Field Separator,IFS)是shell脚本中的一个特殊变量,在处理文本数据很有用。把单个数据流划分成不同的数据元素的定界符,
内部字段分隔符就是用于特定用途的定界符。IFS是存储定界符的环境变量,是shell环境中的默认定界符字符串。
默认值为空白字符(换行符\n,制表符\t,空格)

#!/bin/bash 
OLD_IFS="${IFS}"   ###定义一个变量为默认的IFS,将当前值保存
IFS=,
data=11,22,33,44
for line in $data;do
    echo $line
done
IFS="${OLD_IFS}"    ###还原IFS为默认值

运行脚本结果:
11
22
33
44

14、获取上个月第一天和最后一天

 lastday:date -d "-$(date +%d) days" +%Y%m%d

firstday:date -d "-1 month -$(($(date +%d)-1)) days" +%Y%m%d

15、sshpass用法

sshpass:用于非交互的ssh 密码验证
使用 -p 参数指定明文密码,然后直接登录远程服务器。 它支持密码从命令行,文件,环境变量中读取
1、从命令行方式传递密码
sshpass -p user_password ssh user_name@192.168.1.2  【登录远程机器】
sshpass -p user_password scp -P22 root@192.168.1.2:/home/test  ./ 【远程机器/home/test 复制到本机当前目录】
还可以加参数 -q 【去掉进度显示】

2、从文件读取密码
echo "user_password" > user.passwd
sshpass -f user.passwd ssh user_name@192.168.1.2

3、从环境变量获取密码
export SSHPASS="user_password"
sshpass -e ssh user_name@192.168.1.2 

4、sshpass -p user_password ssh  -o StrictHostKeyChecking=no  user_name@192.168.1.2 
【-o StrictHostKeyChecking=no 表示远程连接时不提示是否输入yes/no】

5、使用sshpass远程免密,在远程主机上执行shell命令,如下远程执行命令:touch /opt/file.txt
sshpass -p user_password ssh  -o StrictHostKeyChecking=no  user_name@192.168.1.2  touch /opt/file.txt
[注:shell命令要和sshpass命令写在一行]

复制自:https://www.jianshu.com/p/a2aaa02f57dd 觉得他总结的很好,复制到自己博客,方便自己下次查找。
Linux中常用的一些shell命令 很多的时候我们知道有一个命令,但不知道它的详细用法,可以来搜索下。但有些时候压根不知道有这个命令,比如vimdiff和diff这两个命令,知道人就比较少。本节内容主要汇总一下Linux中常用的一些shell命令。转存失败重新上传取消。 阅读详情

相关推荐

Linux运维方向文章汇总

linux云计算架构师 第0阶段 开班仪式 如何成为一个优秀的运维人员 企业linux运维岗位详细介绍 运维人该有的思维和习惯 优秀学员分享公司情况与学习方法 运维人员的五年规划及十年目标 课程规章制度及后续跟踪学习介绍 目前运维就业情况及学习资料 第一阶段 linux基础 计算机组成原理及linux历史 计算机硬件入门 计算机组成原理介绍 书籍推荐 linux的历史及名字由来 计算机语言...

互联网老辛 4013

Shell基础(二)

bash中的引号: 双引号 "":会把引号的内容当作整体来看待,允许通过 $ 符合引用其他变量值。 单引号'':会把引号的内容当作整体来看待,禁止引用其他变量值,shell中特殊符号都会被视为普通字符。 反撇号` `:反撇号和$()一样,引号或括号里的命令回优先执行,如果存在嵌套的话,反撇号不能用。 接受用户变量 read read -p 定义提示用户信息。 read -n 定义字符数。 read -s 不显示用户输入的内容。 read -t 定义超时时间,默认单位为秒。 定义有类型的变量(de

关注我!菜鸟进阶站 1089

Linux——常用shell命令汇总

1、显示命令 语法:ls [选项] [路径] 功能:显示指定工作目录下的内容 主要参数举例: -a 显示所有文件以及目录。 -l 列出文件名称外,还将文件形态、权限、拥有者、文件大小等详细信息列出。 2、查看当前工作路径 语法:pwd 功能:显示当前工作目录的绝对路径 主要参数:无 3、切换目录 语法:cd [路径] 功能:切换到指定路径下 主要参数:无 例如:切换到/home 文件夹下...

数字世界 万物互联 7694

Shell中常用的几种运算,收藏自用

Shell中常用运算,四则运算,比较运算,逻辑运算

Yteach的博客 3520

『n8n』初识界面

在首页(Overview),我们和 n8n 最常打交道的是“Workflows”、“Credentials”、“Executions”这几个面板(其实后面2个也会用到,但初学阶段可以先不管)。Workflows 面板可以看到我们创建的所有工作流,所以要给工作流起一个一眼看上去就知道是干嘛的名字。

weixin_39415598的博客 1460

Latex | IEEE双栏排版中长公式的排版

IEEE双栏排版中,有时候公式过于长了,过宽,导致单栏排版不下。

qq_43466146的博客 1万+

shell第二章(shell变量、shell条件表达式与运算符)

shell变量 1、shell变量简介 变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据。脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则。 在 Bash shell 中,每一个变量的值都是字符串,无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储;这意味着,Bash shell 在默认情况下不会区分变量类型,即使你将整数和小数赋...

weixin_30347009的博客 540

R语言新手也能搞定!WGCNA分析全流程代码详解(附常见报错解决方案)

本文为R语言新手提供了WGCNA分析的完整代码流程与实战指南。从环境配置、数据准备、软阈值选择、网络构建到模块-表型关联分析,逐步详解核心步骤。重点针对安装依赖、内存不足等常见报错提供了具体解决方案,帮助初学者避开陷阱,顺利完成加权基因共表达网络分析。

terraform7cloud的博客 539

Shell——运算符

在 Shell 编程中,运算符用于执行各种类型的操作,如算术运算、字符串比较、文件测试等

Mitos的博客 740

多普勒效应及多普勒频移的简单推导

多普勒频移的简单推导

m0_47867419的博客 3万+

美团mtgsig 1.2算法分析

mtgsig1.2的一些算法总结

记录一些web逆向的过程 3500

shell中的运算

1、运算符号 + ##加法 -##减法 *##乘法 /##除法 % ##除法后的余数 ** ##乘方 ++ ##自加一 -- ##自减一 < ##小于 <= ##小于等与 >##大于 ...

Morganite的博客 683

内存越界一定会导致程序崩溃吗?详解内存越界

本文详细解释了内存越界不一定导致内存越界的问题,全面介绍了C++内存越界的相关内容。

dvlinker的技术专栏 2万+

linux shell知识点汇总

linux知识点汇总

wx740851326的博客 703

OSPF规划两大模型:双塔奇兵、犬牙交错

大家好,今天给大家带来的是OSPF规划两大模型:双塔奇兵、犬牙交错,让我们直接开始吧! OSPF规划之双塔奇兵 说明: OSPF 如果某个区域存在两个 ABR,并且在两个 ABR 上都对 area n 内的路由做了聚合操作。 最佳配置: 两台ABR之间的红线应该使用以太网的子接口技术,一个子接口属于area0,另一个属于 area n;或者该链路规划为 area n,同时配置虚连接; ABR 的 loopback0 规划入 area 0 OSPF 规划之犬牙交错 说明: 有时接入层的设备会以乱序的

网络技术联盟站 2423

2026年全球VCSEL芯片竞争格局揭秘:美欧亚“三足鼎立”,中国军团强势崛起

全球VCSEL芯片市场迎来爆发期,预计2032年规模将达110亿元。美国Lumentum、Coherent等巨头主导消费电子和光通信领域,欧洲ams-OSRAM、TRUMPF则在车规级高功率VCSEL占据优势。中国企业如长光华芯、纵慧芯光加速追赶,实现从3D传感向激光雷达的技术跨越。行业未来聚焦高功率、多结阵列化发展,自动驾驶和AI算力需求将推动市场持续增长,但面临技术壁垒、供应链依赖等挑战。国际巨头与中国厂商将在这一光芯片赛道展开激烈竞争。

致力于lidar应用开发 782

【Linux】Shell入门知识点汇总

记录下本人看Shell脚本时的一些知识点。本文章已发布在本人个人博客:Shell脚本入门知识汇总 预览图如下:

蓝亭书序 422

深度学习工具包 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")

linux脚本知识,Linux shell知识点汇总

实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。引言SHELL在处理一些问题的时候有得天独厚的优势,快捷方便,学会了还可以显摆显摆...

weixin_35102377的博客 181

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Linux | Shell脚本 | Shell脚本学习、思维导图、知识点汇总

Shell脚本学习思维导图 文章目的:一方面是整理自己思路,让零散的知识点成块成链,方便日后查询;另一方面培养自己一个整理的过程。“积跬步,行至千里;积小流,汇以成江海”,共勉。 ...

qq_45631520的博客 569

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

坐拥IT高薪职位必备底层知识系列——linux shell 编程与命令行基础知识汇总

Linux shell编程,系统常用命令,各种服务进程安装视频知识点@ Linux shell编程部分 @shell定义: 操作系统提供给用户的用以访问,管理,控制操作系统的接口。在windows中称为CMD,在Linux中称为shell。这种用户接口(shell,又称外壳)会解释用户输入的指令,并搜索该指令对应存储在磁盘中的二进制可执行程序文件,然后传递给操作系统内核执行...

weixin_34174132的博客 103

【Linux】Linux知识点汇总

Linux知识点汇总Linux知识点汇总一、Linux文件,目录,磁盘格式1.文件颜色代表的意义2.Linux文件目录结构3.Linux文件基本属性4.Linux文件与目录管理4.1 绝对路径4.2 相对路径4.3 处理目录的常用命令4.4 Linux 文件内容查看4.5 文件与目录的默认权限与隐藏权限4.6 命令与文件的查找二、Vim与Shell三、Linux磁盘管理1.Linux 文件系统与磁盘的关系1.1 磁盘格式1.2 文件系统1.3 磁盘与目录的容量1.4 硬链接与符号链接(软连接)1.5 观察磁

Leoh的博客 6857

Linux行业招聘技术面试题汇总

Linux行业招聘技术面试题汇总 1. 在Linux系统中,以 文件 方式访问设备 。 2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统。 3. Linux文件系统中每个文件用 i节点 来标识。 4. 全部磁盘块由四个部分组成,分别为引导块 、专用块 、 i节点表块 和数据存储块。 5. 链接分为: 硬链接 和 符号链接 。 6. 超级块包含了i节点表

俺总在笑 1229

【Linux面试题】全网汇总总结:Linux基础、常用命令、shell脚本、常见笔试题

【Linux面试题】全网汇总总结:Linux基础、常用命令、shell脚本Linux基础知识Linux常用命令shell基础知识shell笔试题 Linux基础知识 Linux常用命令 shell基础知识 shell笔试题

展信佳,当你看到这段简介的时候,我“风吹海洋浪”已走马上任优快云博客平台。我来这只办一件事:致力于将模糊的概念清晰化,技术的语言通俗化,复杂的关系逻辑化,孤岛的知识碎片结构化,让我一心和技术大佬们共同进步,最重要的是!!!!!忘记【你】 1118

Linux命令行工具学习 lesson_0 : 问题与知识点汇总

1. Linux命令行工具学习过程中遇到的问题与知识背景汇总; 2. 【学习内容】主要是外部链接的blog与教程等,【学习笔记与总结】可另开篇blog; 3. 持续编辑与整理中…… 编程素质 google 开源项目风格指南:c++,python,shell 正则表达式: 30 分钟入门正则表达式 菜鸟教程:正则表达式 Linux 操作系统 Linux 设备管理 博...

Lemon刘羽飞 282

Linux shell脚本练习题汇总

Linux shell脚本练习题汇总 编写脚本文件example1.sh,存放在/home/cauc/scripts目录下。脚本功能为:查找某文件是否存在(以参数形式),若存在,则将其权限设置为用户主可读可改,其他人无任何权限。否则则返回无此文件的信息。 #!/bin/bash if [ -e $1 ] then chmod 600 $1 else echo "The file $1 does not exist" fi 编写脚本文件leapyear.sh,存放在/home/cauc/scrip

qq_47867028的博客 1万+
上一篇: zabbix 4.0.1安装、图表注释丢失,坐标轴没有单位的解决办法和中文乱码的解决方法
下一篇: 查看cpu核数、物理个数,逻辑个数
小懒虫不想写博客
博客等级 码龄8年 33粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值