【发布时间】:2013-12-24 00:54:06
【问题描述】:
我有一个目录,里面有一些文件夹和一些文件。假设这是我的当前目录,如下所示,使用pwd 命令 -
david@slc4b03c:/bat/data/snapshot$ pwd
/bat/data/snapshot
我登录到machineA。
这个/bat/data/snapshot 目录将包含一些文件夹和一些文件,如下所示 -
david@slc4b03c:/bat/data/snapshot$ ls -lt
total 22400264
drwxr-xr-x 2 cronusapp app 102400 2013-12-22 04:01 20131222
drwxr-xr-x 2 cronusapp app 102400 2013-12-16 03:00 20131215
-rw-r--r-- 1 cronusapp app 26412620 2013-12-13 02:04 weekly_003_5.data
-rw-r--r-- 1 cronusapp app 26492037 2013-12-13 02:02 weekly_003_5.data
-rw-r--r-- 1 cronusapp app 26480695 2013-12-13 02:02 weekly_003_5.data
-rw-r--r-- 1 cronusapp app 26475266 2013-12-13 02:02 weekly_003_5.data
-rw-r--r-- 1 cronusapp app 26471366 2013-12-13 02:02 weekly_003_5.data
-rw-r--r-- 1 cronusapp app 26455311 2013-12-13 02:02 weekly_003_5.data
所以我拥有的两个文件夹是20131222 和20131215,如上所示。现在我想从中提取最新的文件夹,即20131222,因为它比20131215 更新。然后像这样制作一个完整的路径 -
/bat/data/snapshot/20131222/
因为我需要在从那台机器执行 scp 到另一台机器时使用这个完整路径,
下面是我的 shell 脚本,我在其中硬编码了当前使用 20131222 的最近路径,但总的来说,我需要通过使用下面的 shell 脚本查看哪个文件夹是最新的文件夹来制作完整路径。.
#!/bin/bash
readonly LOCATION=/bat/data/snapshot
scp david@slc4b03c.slc.host.com:/bat/data/snapshot/20131222/weekly_003_5.data /data01/primary/.
上面的shell脚本我不会在机器A上运行。我将在不同的机器上运行,假设它是machineB。
是否可以在 shell 脚本中执行此操作?
【问题讨论】:
-
您的列表似乎显示相同的文件夹名称出现了 6 次(有一些大小差异);这是一个编辑错误,还是以 0-5 个空格结尾,或者其他类似的东西?
-
@JonathanLeffler: 没错,那是编辑时弄错了.. 很抱歉..
标签: linux bash shell unix ubuntu