小编Dav*_*ony的帖子

如何在Mac中创建批处理文件?

我需要找到一个解决方案,每天备份特定的文件夹,希望是一个RAR或ZIP文件.

如果是在PC上,我本来就已经做过了.但我不知道如何在Mac上接近它.

我基本上想要实现的是一个自动化任务,可以使用可执行文件运行,它可以:

  1. 将特定目录(/Volumes/Audio/Shoko)压缩为rar或zip文件.

    (在zip文件中排除所有子目录中的所有*.wav文件和目录名称"视频").

  2. 将它移动到网络共享(/Volumes/Post Shared/Backup From Sound).

    (或直接压缩到此文件夹).

  3. 使用动态日期和时间自动化Zip文件的文件名(因此没有重复的文件名).

  4. 完成后关闭Mac.

我想再说一遍,我通常不会使用Mac,所以像脚本打开什么样的文件,这样的东西对我来说并不是微不足道的.

我试图将Mark的bash行(来自下面的第一个答案)放在txt文件中并执行它,但是它有错误而且没有用.

我也试过使用Automator,但它太简单了,没有高级选项.

我怎么能做到这一点?

我会喜欢一个有效的例子:)

谢谢,

戴夫

macos bash terminal applescript batch-file

3
推荐指数
1
解决办法
2万
查看次数

如何在自己的代码中提升已经运行的会话

我正在编写一个可在Active Directory中配置某些功能的PowerShell脚本。

我需要以特定用户身份运行它,以便获得该过程的正确权限,目前我正在通过.bat文件运行.ps1文件,因此我可以选择“以其他用户身份运行”或“以管理员”。

我要实现的目标是,在脚本中,我将向用户询问正确的凭据,然后根据输入的用户凭据提升会话运行速度。

我尝试在我的代码中使用它:

Start-Process powershell.exe -Credential "TestDomain\Me"
Run Code Online (Sandbox Code Playgroud)

但是它只是在当前会话继续运行的同时打开一个空的PS会话。

我想使用此代码来获得用户的信任:

$msg = "Enter your Domain Admin Credentials"; 
$creds = $Host.UI.PromptForCredential($caption,$msg,"","")
$rstusername = $creds.username;    
$rstpassword = $creds.GetNetworkCredential().password 
Run Code Online (Sandbox Code Playgroud)

然后使用$rstusernameAND $rstpassword来更改正在运行的脚本凭据。

那有可能吗?

powershell elevation batch-file active-directory powershell-4.0

2
推荐指数
1
解决办法
5954
查看次数

Perl:查找char的最后一次出现"\"

我想从像这样的文件字符串中删除路径:

Root\ToOrganization\Service_b37189b3-8505-4395_Out_BackOffice.xml
Run Code Online (Sandbox Code Playgroud)

我试图找到最后一次出现的"\"的索引,所以我可以使用子串到那里.

但我不能在搜索中使用字符"\".我正在使用"\",但它不起作用......

我正在尝试的代码:

$file = "Root\ToOrganization\Service_b37189b3-8505-4395_Out_BackOffice.xml";
$tmp = rindex($file, "\\");
print $tmp;
Run Code Online (Sandbox Code Playgroud)

我得到的输出:

-1
Run Code Online (Sandbox Code Playgroud)

我能做什么?

regex perl substring escaping indexof

0
推荐指数
1
解决办法
491
查看次数