精华内容
下载资源
问答
  • mysql将时间戳转成常用时间格式在mysql中,一个时间字段的存储类型是int(11),怎么转化成字符类型,比方存储为13270655222,需要转化为yyyy -mm-dd的形式使用 FROM_UNIXTIME函数,具体如下:FROM_UNIXTIME(unix_...

    mysql将时间戳转成常用时间格式

    在mysql中,一个时间字段的存储类型是int(11),怎么转化成字符类型,比方存储为13270655222,需要转化为yyyy -mm-dd的形式

    使用 FROM_UNIXTIME函数,具体如下:

    FROM_UNIXTIME(unix_timestamp,format)

    返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。

    根据format字符串格式化date值。下列修饰符可以被用在format字符串中: %M 月名字(January……December)

    %W 星期名字(Sunday……Saturday)

    %D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)

    %Y 年, 数字, 4 位

    %y 年, 数字, 2 位

    %a 缩写的星期名字(Sun……Sat)

    %d 月份中的天数, 数字(00……31)

    %e 月份中的天数, 数字(0……31)

    %m 月, 数字(01……12)

    %c 月, 数字(1……12)

    %b 缩写的月份名字(Jan……Dec)

    %j 一年中的天数(001……366)

    %H 小时(00……23)

    %k 小时(0……23)

    %h 小时(01……12)

    %I 小时(01……12)

    %l 小时(1……12)

    %i 分钟, 数字(00……59)

    %r 时间,12 小时(hh:mm:ss [AP]M)

    %T 时间,24 小时(hh:mm:ss)

    %S 秒(00……59)

    %s 秒(00……59)

    %p AM或PM

    %w 一个星期中的天数(0=Sunday ……6=Saturday )

    %U 星期(0……52), 这里星期天是星期的第一天

    %u 星期(0……52), 这里星期一是星期的第一天

    %% 一个文字“%”。

    所有的其他字符不做解释被复制到结果中。

    如:

    SELECT FROM_UNIXTIME(1234567890, '%Y-%m-%d %H:%i:%S')

    可以自己指定格式。

    取消

    评论

    展开全文
  • 在window下编写的脚本,在Linux上执行报错,具体如下 再次执行脚本正常

    在window下编写的脚本,在Linux上执行报错,具体如下
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    再次执行脚本正常

    展开全文
  • 为什么要进行shell编程在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。...下面,让我们一起来看看shell是如何工作的:建立一个脚本Linux中有好多中不同的shell...

    为什么要进行shell编程

    在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言。您可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。

    下面,让我们一起来看看shell是如何工作的:

    建立一个脚本

    Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在bash的大姐,bourne shell中运行)。

    如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi等来编写我们的shell程序。程序必须以下面的行开始(必须方在文件的第一行):

    #!/bin/sh

    符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。

    要使脚本可执行:

    chmod +x filename

    然后,您可以通过输入: ./filename 来执行您的脚本。

    注释

    在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。

    变量

    在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:

    变量名=值

    取出变量值可以加一个美元符号($)在变量前面:

    #!/bin/sh

    #对变量赋值:

    a=”hello world”

    # 现在打印变量a的内容:

    echo “A is:”

    echo $a

    在您的编辑器中输入以上内容,然后将其保存为一个文件first。之后执行chmod +x first。使其可执行,最后输入./first执行该脚本。

    这个脚本将会输出:

    A is:

    hello world

    有时候变量名很容易与其他文字混淆,比如:

    num=2

    echo “this is the $numnd”

    这并不会打印出”this is the 2nd”,而仅仅打印”this is the “,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:

    num=2

    echo “this is the $nd”

    这将打印: this is the 2nd

    有许多变量是系统自动设定的,这将在后面使用这些变量时进行讨论。

    如果您需要处理数学表达式,那么您需要使用诸如expr等程序(见下面)。除了一般的仅在程序内有效的shell变量以外,还有环境变量。由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。

    Shell命令和流程控制

    在shell脚本中可以使用三类命令:

    1)Unix 命令:

    虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。

    常用命令语法及功能:

    echo “some text”: 将文字内容打印在屏幕上。

    ls: 文件列表。

    wc –l file wc -w file wc -c file: 计算文件行数 计算文件中的单词数 计算文件中的字符数。

    cp sourcefile destfile: 文件拷贝。

    mv oldname newname : 重命名文件或移动文件。

    rm file: 删除文件。

    grep ‘pattern’ file: 在文件内搜索字符串比如:grep ‘searchstring’ file.txt

    cut -b colnum file: 指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:输出每行第5个到第9个字符cut –b 5-9 file.txt千万不要和cat命令混淆,这是两个完全不同的命令。

    cat file.txt: 输出文件内容到标准输出设备(屏幕)上。

    file somefile: 得到文件类型。

    read var: 提示用户输入,并将输入赋值给变量。

    sort file.txt: 对file.txt文件中的行进行排序。

    uniq: 删除文本文件中出现的行列比如: sort file.txt | uniq。

    expr: 进行数学运算Example: add 2 and 3 expr 2 “+” 3。

    find: 搜索文件比如:根据文件名搜索find . -name filename -print。

    tee: 将数据输出到标准输出设备(屏幕) 和文件比如:somecommand | tee outfile。

    basename file: 返回不包含路径的文件名比如: basename /bin/tux将返回 tux。

    dirname file: 返回文件所在路径比如:dirname /bin/tux将返回 /bin。

    head file: 打印文本文件开头几行。

    tail file : 打印文本文件末尾几行。

    sed: Sed是一个基本的查找替换程序。可以从标准输入(比如命令管道)读入文本,并将结果输出到标准输出(屏幕)。该命令采用正则表达式(见参考)进行搜索。不要和shell中的通配符相混淆。比如:将linuxfocus 替换为 LinuxFocus :cat text.file | sed ‘s/linuxfocus/LinuxFocus/’ > newtext.file。

    awk: awk 用来从文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。cat file.txt | awk -F, ‘{print “,” }’这里我们使用,作为字段分割符,同时打印第一个和第三个字段。如果该文件内容如下:

    Adam Bor, 34, IndiaKerry Miller, 22, USA

    命令输出结果为:

    Adam Bor, IndiaKerry Miller.

    2) 概念: 管道, 重定向和 backtick

    这些不是系统命令,但是他们真的很重要。

    管道 (|) 将一个命令的输出作为另外一个命令的输入。

    grep “hello” file.txt | wc -l

    在file.txt中搜索包含有”hello”的行并计算其行数。在这里grep命令的输出作为wc命令的输入。当然您可以使用多个命令。

    重定向:将命令的结果输出到文件,而不是标准输出(屏幕)。

    > 写入文件并覆盖旧文件。

    >> 加到文件的尾部,保留旧文件内容。

    反短斜线,使用反短斜线可以将一个命令的输出作为另外一个命令的一个命令行参数。

    命令:

    find . -mtime -1 -type f -print

    用来查找过去24小时(-mtime –2则表示过去48小时)内修改过的文件。如果您想将所有查找到的文件打一个包,则可以使用以下脚本:

    #!/bin/sh

    # The ticks are backticks (`) not normal quotes (‘):

    tar -zcvf lastmod.tar.gz `find . -mtime -1 -type f -print`

    3) 流程控制

    “if” 表达式 如果条件为真则执行then后面的部分:

    if ….; then

    展开全文
  • 无论如何,我们的任务是编写一个shell脚本从一组文件中获取数据,并以特定程序(Migrate-N)读取的格式将其写入新文件.当我将它们输入到命令行中时,我已经得到了一些功能来完成我需要独立的功能,...

    我非常非常新的UNIX编程(通过终端在MacOSX Mountain Lion上运行).我一直在从生物信息学和分子方法课程(我们有两个类)学习基础知识,我们最终将使用perl和

    python进行数据管理.无论如何,我们的任务是编写一个shell脚本从一组文件中获取数据,并以特定程序(Migrate-N)读取的格式将其写入新文件.

    当我将它们输入到命令行中时,我已经得到了一些功能来完成我需要独立的功能,但是当我们将它们全部放在一个脚本中并尝试运行它时,我会收到一个错误.以下是详细信息(对于长度,我深表歉意):

    #! /bin/bash

    grep -f Samples.NFCup.txt locus1.fasta > locus1.NFCup.txt

    grep -f Samples.NFCup.txt locus2.fasta > locus2.NFCup.txt

    grep -f Samples.NFCup.txt locus3.fasta > locus3.NFCup.txt

    grep -f Samples.NFCup.txt locus4.fasta > locus4.NFCup.txt

    grep -f Samples.NFCup.txt locus5.fasta > locus5.NFCup.txt

    grep -f Samples.Salmon.txt locus1.fasta > locus1.Salmon.txt

    grep -f Samples.Salmon.txt locus2.fasta > locus2.Salmon.txt

    grep -f Samples.Salmon.txt locus3.fasta > locus3.Salmon.txt

    grep -f Samples.Salmon.txt locus4.fasta > locus4.Salmon.txt

    grep -f Samples.Salmon.txt locus5.fasta > locus5.Salmon.txt

    grep -f Samples.Cascades.txt locus1.fasta > locus1.Cascades.txt

    grep -f Samples.Cascades.txt locus2.fasta > locus2.Cascades.txt

    grep -f Samples.Cascades.txt locus3.fasta > locus3.Cascades.txt

    grep -f Samples.Cascades.txt locus4.fasta > locus4.Cascades.txt

    grep -f Samples.Cascades.txt locus5.fasta > locus5.Cascades.txt

    echo 3 5 Salex_melanopsis > Smelanopsis.mig

    echo 656 708 847 1159 779 >> Smelanopsis.mig

    echo 154 124 120 74 126 NFCup >> Smelanopsis.mig

    cat locus1.NFCup.txt locus2.NFCup.txt locus3.NFCup.txt locus4.NFCup.txt locus5.NFCup.txt >> Smelanopsis.mig

    echo 32 30 30 18 38 Salmon River >> Smelanopsis.mig

    cat locus1.Salmon.txt locus2.Salmon.txt locus3.Salmon.txt locus4.Salmon.txt locus5.Salmon.txt >> Smelanopsis.mig

    echo 56 52 24 29 48 Cascades >> Smelanopsis.mig

    cat locus1.Cascades.txt locus2.Cascades.txt locus3.Cascades.txt locus4.Cascades.txt locus5.Cascades.txt >> Smelanopsis.mig

    一系列greps只是将每个位点的每个位点的DNA序列数据拉出到新的文本文件中.示例… txt文件具有站点的样本ID号,.fasta文件具有按样品ID组织的序列信息;如果我单独运行,grep在命令行中工作正常.

    第二组代码创建了我需要结束的实际的新文件,以.mig结尾.回波线是程序需要信息的计数数据(每个轨迹的基准图,分析中的人口,每个站点的样本等).猫线将通过由回波线中指定的特定于站点的信息下面的所有grepping创建的站点数据来将场所混合在一起.你无疑得到照片.

    为了创建shell脚本,我已经在Excel中启动了,所以我可以轻松地复制粘贴/自动填充单元格,保存为制表符分隔的文本,然后在TextWrangler中打开该文本文件,将其保存为.sh文件(Line中断:与脚本中使用的所有文件相同的目录中的Unix(LF)和编码:Unicode(UTF-8)).我已经尝试使用chmod x FILENAME.sh和chmod u x FILENAME.sh尝试确保它是可执行的,但无济于事.即使我把脚本剪下来只是一个grep行(用#!/ bin / bash第一行),我无法让它工作.该过程只需要一段时间,当我直接键入命令行,因为这些文件中没有一个大于160KB,有些显着更小.这是我输入的内容,当我尝试运行文件时,我得到什么(HW是正确的目录)

    localhost:HW Mirel$MigrateNshell.sh

    -bash: MigrateNshell.sh: command not found

    我一直在这个无聊的两天,所以任何输入将不胜感激!谢谢!!

    展开全文
  • 要运行不可执行的sh脚本,请使用:sh myscript要运行不可执行的bash脚本,请使用:bash myscript要启动可执行文件(这是具有可执行权限的任何文件);只需按其路径指定即可:/foo/bar/bin/bar./bar要使脚本可执行,请...
  • shell脚本

    千次阅读 2021-02-02 19:26:00
    shell脚本就是将命令写入文本中,文本可以被执行。 二、脚本的调用形式 打开终端时系统自动调用:/etc/profile 或 ~/.bashrc /etc/profile 此文件为Linux系统为每个用户设置环境变量,当用户第一次登陆时,该文件会...
  • 如何写shell脚本

    2021-03-08 23:02:22
    这里是修真院后端小课堂,每篇分享文从【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】八个方面深度解析后端知识/技能,本篇分享的是:【如何写shell脚本?...
  • 在 Linux 中有两种运行 shell 脚本的方法。你可以使用:bashscript.sh或者,你可以像这样执行 shell 脚本:./script.sh这可能很简单,但没太多解释。不要担心,我将使用示例来进行必要的解释,以便你能理解为什么在...
  • 今天继续给大家介绍Linux基础知识,本文主要内容是Linux的shell脚本。 一、shell简介 shell是用户与Linux系统之间沟通的桥梁,用户通过shell给Linux下达命令,控制系统,同时系统也可以通过shell给用户反馈,如命令...
  • 简单shell脚本例子

    2021-06-12 11:28:02
    为什么要使用Shell脚本使用脚本编程语言的好处是,它们多半运行在比编译型语言还高的层级,能够轻易处理文件与目录之类的对象。缺点是:它们的效率通常不如编译型语言。不过权衡之下,通常使用脚本编程还是值得的:...
  • shell脚本读取参数

    2021-05-14 01:22:00
    自己写的脚本,怕自己也看不懂了,详细描述一下#!/bin/bash这个你懂得,是bashshell的标记,以前我不知道这个有什么用处,如果不写一样可以执行。直道有一天我把脚本放到redhat enterprise 6 的桌面,有标记的和没有...
  • 10个经典Linux Shell脚本

    2021-05-11 09:48:45
    Linux Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序...
  • Shell脚本简单入门教程,如果你分不清shell是什么,此文一定不适合你。毕竟只花了十多分钟看的教程,不会涉及细节,细节将在以后的使用中逐渐以示例形式给出。PS:借来的东西,果然迟早是要还的。刚在linux下学习时,...
  • linux定时执行shell脚本

    2020-12-24 18:39:37
    利用crontab来定时执行任务大致有如下三步:1、编写shell脚本2、利用crontab加入到定时任务队列3、查看作业完成情况一、如何建立shell脚本Linux下有很多不同的shell,但我们通常使用bash(bourne again shell)进行...
  • ShellScript,Shell脚本与Windows/Dos下的批处理类似,也便是用各类指令预先放入到一个文件中,便利一次性执行的一个程序文件,主要是便利办理员进行设置或许办理用的。可是它比Windows下的批处理更强大,比用其他...
  • UNIX-在Shell脚本中注释掉一组行我想知道是否有办法在shell脚本中注释掉一组行。我该怎么办? 我们可以在其他编程语言中使用/ * * /。这在我转换/使用/修改另一个脚本时最有用我想保留原始行而不是删除。对于所有未...
  • 从windows到linux的shell脚本编码和格式问题从windows到Linux的shell脚本编码和格式问题1、异常问题 :set ff=unix启动脚本在启动时报错比如执行sh start.sh,时会报Command not found等等的错误,因为我们在windows...
  • Shell脚本学习心得

    2021-05-12 17:50:36
    零零星星的接触到写一些shell也有一些日子了,发现自己已经犯了不少的错误,自我总结下。选择合适的shellshell本身有很多种,大体有如下的几种。/bin/sh (已经被 /bin/bash 所取代)/bin/bash (就是 Linux 预设的 ...
  • 课程内容:Shell脚本编程的技巧永远不会过时:它们可以让Unix充分发挥其真实的潜能。对Unix的用户与系统管理者而言,编写shell脚本是必须的工作,它可以让你快速地控制与定制任何Unix系统的强大功能。有了Shell脚本...
  • SHELL脚本及常用命令

    2021-02-20 08:55:58
    SHELL脚本和常用命令 什么是脚本? 脚本简单地说就是一条条的文字命令(一些指令的堆积),这些文字命令是可以看到的(如可以用记事本打开查看、编辑)。 常见的脚本: JavaScript(JS,前端),VBScript, ASP,JSP...
  • Java 执行Shell脚本指令

    千次阅读 2021-02-12 10:38:56
    一、介绍有时候我们在Linux中运行Java程序时,需要调用一些Shell命令和脚本。而Runtime.getRuntime().exec()方法给我们提供了这个功能,而且Runtime.getRuntime()给我们提供了以下几种exec()方法:Process exec...
  • shell脚本设置了环境变量,如export LIBRARY_PATH=./lib/,执行了此脚本后, 在执行生成的可执行文件,提示错误error while loading shared libraries: libww.so: cannot open shared object file: No such file or...
  • 本章,我们将学习在类 Unix 系统中如何使用变量。一个变量是一个字符串定义,它可以被你赋值,赋值可以是一个数值,一段文本,文件名,设备或任何其它类型的数据。一个变量不会比一个类似指针指向实际的内容具有更多...
  • 理解Linux ShellShellShell是基于命令行的解释器,它连接用户和操作系统,允许通过编写脚本来执行系统的命令。进程:用户在系统中运行的任何一个任务都以进程的形式存在。进程比任务要稍微复杂一些。文件:存储于...
  • 什么是ShellShell是命令解释器(command interpreter),是Unix操作系统的用户接口,程序从用户接口得到...下图所示用户、shell和操作系统的关系:Shell也是一门编程语言,即shell脚本,shell是解释执行的脚本语言,...
  • shell脚本中获取进程pid ps aux | grep "orion"| grep -v "grep" | awk '{print $2}' grep xxx 只查看xxx内容 grep -v xxx 不查看xxx内容 awk '{print $2}' 打印第二列,只能使用单引号
  • 最近经常使用Linux,感觉太频繁地敲击键盘有些累了,于是想到了Shell脚本。可以把太多的命令写成一个脚本,这样每次执行一遍 shell文件,就可以省去了敲击键盘的时间。于是在网上搜了一些有关Linux下脚本编程的内容...
  • shell脚本学习与总结

    2021-03-14 18:47:10
    1.shell 脚本是区分小写的2.Unix特殊字符有: ( ; $ ? & * () [] ` ‘ “ + 使用其时要进行转义()3.Shell的注释以#开头4.函数的定义Function fuction_name(){Command to execute}调用时直接用function_name.5....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,563
精华内容 46,625
关键字:

shell脚本unix