- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想创建一个 cd 版本,它将从目录结构中删除文件名,然后 cd 到该目录。
例如,如果我放入 (tc)shell
cd /net/homes/me/myfile.jpg
它将剥离“myfile.jpg”并进入目录结构。我试过这是我的 .cshrc:-
alias ccd '/net/homes/me/scripts/getDir.py'
然后我的 getDir.py 文件读取为:-
#! /usr/bin/python
import sys
import os
def get_dir():
the_dir = sys.argv[1]
dir_split = the_dir.split("/")
dir_count = len(the_dir.split("/"))
file_count = len(dir_split[dir_count-1])
only_dirs = the_dir[:-file_count]
#print only_dirs
os.chdir(only_dirs)
get_dir()
这很好地去除了 dir 结构的文件名部分(我可以从 print 语句中看出这一点)但是 chdir 命令似乎不起作用。
谢谢!
最佳答案
有一个名为 dirname
的标准二进制文件可以为您完成此操作,因此您只需使用...
alias ccd 'cd `dirname \!:1`'
This works, can you explain the syntax?
好吧,dirname\!:1
部分意味着运行 dirname
程序,第一个参数传递给别名命令,反引号替换该命令的输出编程到 cd
命令中。
关于python - 将 tcsh 别名为 python 脚本然后将结果返回给 tcsh?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17070416/
我尝试将用户输入的字符串与特定模式进行匹配,确切地说,我想检查字符串是否以大写字母开头,然后以任何大写、小写字母或数字继续。我想在 tcsh 中执行此操作,我知道使用 bash 更好,但我必须使用 t
我试图在 tcsh(版本 6.12.00 (Astron) 2002-07-23)中编写一个简单的脚本,但我被 if-then-else 语法绊倒了。我对剧本写作很陌生。 这个脚本有效: #!/bin
对于问题的简化版本,请先阅读下面的 Update1。 我制作了一个 tcsh 文件,将其运行的文件夹中所有文件/文件夹的列表保存到一个文件中(我正在处理一个神经成像项目,并且我有一个包含许多主题的文件
在 tcsh 中,我试图从我的 .aliases 文件中的命令重定向 STDERR。 我发现我可以像这样从命令行重定向 STDERR。 . . $ (xemacs > /dev/tty) >& /de
我想创建一个 cd 版本,它将从目录结构中删除文件名,然后 cd 到该目录。 例如,如果我放入 (tc)shell cd /net/homes/me/myfile.jpg 它将剥离“myfile.jp
我使用标准设置安装了 anaconda3,主要使用 tcsh。如果终端在 tcsh 中打开,然后我输入“conda”,它就会工作。如果我输入“python”,它会显示 Python 2.7.10 (d
我正在尝试执行一个简单的 tcsh 脚本来查找文件夹,然后导航到该文件夹(如果存在)。该语句正确评估,但如果它评估为假,我会收到错误“then: then/endif not found”。如果它
我有一个生成文本文件的 tcsh 脚本。文本文件中的其中一行是: bla bla bla 'foo foo foo "bar bar bar"': etc etc; 注意嵌套 '和 "还有 :和 ;那
我使用 tcsh 作为我的默认 shell。但是, LS_COLORS 环境似乎不起作用。这是我的 ls 相关环境: setenv CLICOLOR "true" setenv LS_COLORS "
我正在尝试运行以下命令: replace -x "must " A2input.txt replace -x " a" -f -s ## A2input.txt replace -x to -s ##
我尝试在每次输入命令后将历史记录保存在 tcsh 中,而不是在“退出”命令后保存它。这是因为我通常会同时打开大约 10 个选项卡,之后我只是关闭终端窗口,而不是在每个选项卡中键入“exit”。结果是仅
我想在 tcsh 中使用变量来保存脚本的使用信息,因此在我的脚本中,每当我编写 echo $usage 时,它都会打印 my_script -h : -help -b : do boo 等
我正在努力尝试使用简洁的比较语句来避免一堆“if a = b or a = c or a = d or a = e”等。 相反,我尝试使用正则表达式和模式匹配,就像在 Perl 中所做的那样。 与 s
tcsh历史文件中的数字是什么意思? [root@localhost ~]# vi /home/test/.history #+1572853835 su 0- #+1572854170 histor
我的 .cshrc.user 有这一行(使用 tcsh) set prompt = "%{\033[36m%}%m%{\033[32m]%}{`echo $CLEARCASE_ROOT | cut -
tcsh 中是否有一行命令来更改一组文件的扩展名?在各种 DOS shell 中,我曾经使用以下内容: ren *.abc *.def 这会将所有以 .abc 结尾的文件重命名为以 .def 结尾。在
我正在运行 CentOS 7,但我遇到了 tcsh 脚本的问题。 我有一个名为 quittest 的简单脚本。 #!/bin/tcsh echo "Simple Test" exit 0 当我从终端运
如何查看当前版本的 tcsh 在我的 unix 终端中运行? 最佳答案 看version多变的: % echo $version tcsh 6.14.00 (Astron) 2005-03-25 (i
通过 tcsh 执行 IF 语句时遇到问题。这对我来说很好- #!/bin/bash if echo `cal|tail -6|sed -e 's/^.\{3\}//' -e 's/.\{3\}$//
在 bash 中,我获取 subshell 块的 stdout 并将其分配给一个变量,例如: $ VAL="$(ls)" 这如何在 tcsh 中完成? 最佳答案 使用反引号获取输出并使用 set将
我是一名优秀的程序员,十分优秀!