我是使用数据集的记者。每次我收到一个新的数据集时,我都会立即做两件事:复制文件并锁定原件。Shell脚本复制目录,锁定一个,并移动到新的目录 - 几乎在那里?
我想让这个过程自动化。通过改变a shell script I use to create nested folders for reporting projects并将它与一堆命令串起来,我能够实现基本功能,但它很混乱。我将非常感谢您在精简方面的帮助。
这里就是我现在正在做的(承担与我和我保证会尽可能明确):
我将数据下载到名为“DataInbox”桌面文件夹中我也有下面的shell脚本,保存为newdata.sh:
#!/bin/bash
if [[ -z "${1}" ]]; then
die "FolderName Required"
fi
/bin/mkdir -p ~/Desktop/DataFarm/$1/{ProtectedOrig,Data}
echo -n "---Data Folder Setup
---Data Introduction
---Data Audit/Manipulation
---Data Queries" > ~/Desktop/DataFarm/$1/Data/DataJournal.txt
通过执行bash newdata.sh DirectoryName
我创建子文件夹“数据”和“ProtectedOrig”一个目录,名为“DataJournal.txt”建在四个标题的文本文件
在“DataInbox”导演里面Ÿ我跑这个烂摊子,只有&&
串成:
$ ditto NewData/ NewDataCopy
$ bash newdata.sh DirectoryName
$ mv NewData/ /Users/JSG/Desktop/DataFarm/DirectoryName/ProtectedOrig/NewData
$ mv NewDataCopy/ /Users/JSG/Desktop/DataFarm/DirectoryName/Data/NewDataCopy
$ chflags -R uchg /Users/JSG/Desktop/DataFarm/DirectoryName/ProtectedOrig/
就像我说的,我想简化此。事实上,我真正想做的事情是把整个事情变成一个shell脚本,而我正在努力使它工作。谢谢你从一个急切的新手提前。
如果你只想确保你有原始副本,你可以研究配置管理工具,比如说git或svn。 – rlduffy