Используйте для своей выгоды каждый файл в каталоге, в ударе, с помощью 'svn mv'

не уверен, что вы ищете, но вот как это должно выглядеть следующим образом:

=IFERROR(FILTER('Card Bank'!A2:H, {'Card Bank'!A2:A&
                                   'Card Bank'!B2:B& 
                                   'Card Bank'!C2:C&
                                   'Card Bank'!D2:D&
                                   'Card Bank'!E2:E&
                                   'Card Bank'!F2:F&
                                   'Card Bank'!G2:G&
                                   'Card Bank'!H2:H} = A2&B2&C2&D2&E2&F2&G2&H2), "Error")

enter image description here

другой Возможные варианты:

=IFERROR(FILTER('Card Bank'!A2:H, {'Card Bank'!A2:A&
                                   'Card Bank'!B2:B& 
                                   'Card Bank'!C2:C&
                                   'Card Bank'!D2:D&
                                   'Card Bank'!E2:E&
                                   'Card Bank'!F2:F&
                                   'Card Bank'!G2:G&
                                   'Card Bank'!H2:H} = A2:A&
                                                       B2:B&
                                                       C2:C&
                                                       D2:D&
                                                       E2:E&
                                                       F2:F&
                                                       G2:G&
                                                       H2:H), "Error")

или:

=IFERROR(FILTER('Card Bank'!A2:H, {'Card Bank'!A2&
                                   'Card Bank'!B2& 
                                   'Card Bank'!C2&
                                   'Card Bank'!D2&
                                   'Card Bank'!E2&
                                   'Card Bank'!F2&
                                   'Card Bank'!G2&
                                   'Card Bank'!H2} = A2:A&
                                                     B2:B&
                                                     C2:C&
                                                     D2:D&
                                                     E2:E&
                                                     F2:F&
                                                     G2:G&
                                                     H2:H), "Error")

или:

=IFERROR(FILTER('Card Bank'!A2:H2, {'Card Bank'!A2&
                                    'Card Bank'!B2& 
                                    'Card Bank'!C2&
                                    'Card Bank'!D2&
                                    'Card Bank'!E2&
                                    'Card Bank'!F2&
                                    'Card Bank'!G2&
                                    'Card Bank'!H2} = A2&B2&C2&D2&E2&F2&G2&H2), "Error")

6
задан Alex J 13 October 2008 в 23:48
поделиться

5 ответов

ls | awk '{система ("svn mv" 0$ "" toupper (substr (0,1,1$)) substr (0,2$))}'

очевидно, другие языки сценариев будут работать точно также. awk имеет преимущество что это это повсеместный.

13
ответ дан 8 December 2019 в 13:51
поделиться

Если у Вас есть достойная установка, Вы должны иметь Python, дать этому попытку:

#!/usr/bin/python
from os import rename, listdir
path = "/path/to/folder"
try:
    dirList = listdir(path)
except:
    print 'There was an error while trying to access the directory: '+path
for name in dirList:
    try:
        rename(path+'\\'+name, path+'\\'+name.upper())
    except:
        print 'Process failed for file: '+name
2
ответ дан 8 December 2019 в 13:51
поделиться

Я обычно делаю это путем перенаправления 'ls' произвело в файл, с помощью макросов энергии для массирования каждого имени файла в командную строку, я хочу, затем выполняю файл как сценарий оболочки. Это сыро, но эффективно.

0
ответ дан 8 December 2019 в 13:51
поделиться

Обратите внимание на то, что это изменение повреждает существующий workingcopies в Windows и системах Mac, поскольку они не могут обработать случай, только переименовывает.

1
ответ дан 8 December 2019 в 13:51
поделиться

Я не думаю, что существует простой способ сделать это с bash/sed/tr/find.

Я сделал бы сценарий Ruby/Perl, который делает переименование.

 #!/usr/bin/ruby 
 #  Upcase.rb 
 ARGV.each{ |i|
  newname = i.gsub(/(^.|\s.)/{ |x| x.upcase }
  `svn mv "#{i}" "#{newname}" `
 }

Затем просто сделайте

 ./Upcase.rb foo.txt test.txt test2.txt foo/bar/test.txt 

или если Вы хотите сделать целый dir

 find ./ -exec ./Upcase.rb {} + 
1
ответ дан 8 December 2019 в 13:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: