shell shell脚本正则表达式式 检测用户输入的linux路径 比如 /opt/test或/opt/test或/opt/test/或/opt/test 都可以

Linux_Shell-3.0
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
Linux_Shell_3.0(51testing教程)
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口linux下zip命令的疑问,压缩后的目录结构_百度知道
linux下zip命令的疑问,压缩后的目录结构
现想将/opt/test/etc下面的文件压缩到zip包中,本来想用 zip -r test.zip /opt/test/etc/* ,结果发现test.zip包中的文件夹是/opt开始的,有没有办法去掉/opt/test/etc这几层目录?
提问者采纳
进入/opt/test/etc/目录再执行zip&-r&test.zip&*,就没有/opt/test/etc这几层目录了。cd&/opt/test/etc/zip&-r&test.zip&*或者加上-j参数(只保存文件名称及其内容,而不存放任何目录名称)试试:zip&-rj&test.zip&/opt/test/etc/*
第一种是可以的,但是我在java里只想调一条语句,不想创建个sh,第二种是不行的,没有所有目录结构
zip中的所有选项参数都没有这个功能,cd命令是不会创建新的shell会话啊,cd是bash内置命令,要不全部写到一行cd&/opt/test/etc/&&&&zip&-r&test.zip&*
提问者评价
高玩,多谢兄弟
其他类似问题
38人觉得有用
为您推荐:
目录结构的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Linux shell脚本全面学习-中国金属网
国内市场行情
国际市场行情需求背景:
将数据库里的数据与关联的文件路径一一对应!如:
将Table file_config 中的 File_path :/opt/downloads/.pdf&&& 修改为
:/opt/downloads/.pdf&&&
这样就需要做两步处理,一是更新数据库,二是移动文件与数据库中的路径保持一致!这样看来是如此的简单,但是在实际的操作运行过程就发现了一个问题,Java中执行Linux的命令(如mv)时,并不支持通配符(如?*),就这样一来就不得不将每一个文件执行一条mv命令了。
Linux 中执行 mv命令可以支持通配符(正则表达式),如: mv /opt/temp/srcpath/*.pdf& /opt/temp/destpath/
是完全可以的。但是同样的操作交给Java的Runtime来执行就完成不了。
package com.mss.
import java.io.BufferedR
import java.io.InputS
import java.io.InputStreamR
public class TestComman {
* @param args
public static void main(String[] args) {
String srcpath = &/opt/temp/srcpath/&;
String destpath = &/opt/temp/destpath/&;
String command = &mv &+ srcpath + args[0] +&
System.out.println(&执行的命令为:&+command);
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(command);
InputStream is = process.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line = &&;
while((line = reader.readLine())!=null){
System.out.println(line);
} catch (Exception e) {
e.printStackTrace();
或许Java 的Runtime 有更高级的用法也不得而知,就目前而言我并未发现有更好的处理方式,只能一个文件对应一个mv 命令了!
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:42809次
排名:千里之外
原创:23篇
(2)(7)(1)(4)(1)(6)(1)(2)(4)

我要回帖

更多关于 shell中正则表达式 的文章

 

随机推荐