Converter o Windows Batch para rodar no CentOS?

0

Eu tenho meu script atual:

@echo off 
c: 
REM Forces to change to C drive 
cd / 
REM Forces to start at c:\ instead of a random folder 
cd Users\%USERNAME%\Documents\ 
REM Selects the work folder 
echo current directory = %cd% 
REM Displays the work folder 
set /p Folder= Please insert domain name? 
REM Asks user for folder name to save in 

if not exist %Folder% ( 
    mkdir %Folder% 
    cd %Folder% 
    break>"CSR.txt" 
    break>"KEY.txt" 
    start notepad++ "CSR.txt" 
    start notepad++ "KEY.txt" 
    REM Makes the folder and requested files , also opens the files in notepad++ 
 ) else ( 
    echo %Folder% already exists, creating date folder 
    cd %Folder% 
    mkdir %date:~-10,2%-%date:~-7,2%-%date:~-4,4%-%time:~0,2%_%time:~3,2% 
    cd %date:~-10,2%-%date:~-7,2%-%date:~-4,4%-%time:~0,2%_%time:~3,2% 
    break>"CSR.txt" 
    break>"KEY.txt" 
    start notepad++ "CSR.txt" 
    start notepad++ "KEY.txt" 
    REM If previous folder already exists make a date folder , also opens the files  in notepad++
    pause  
)

(Não se importe com as linhas REM, este é o meu primeiro roteiro, então tive que adicionar algumas dicas para mim)

Agora, quero que esse script seja executado em meu servidor (CentOS), mas não faço ideia de como isso funciona.

Alguém pode me apontar na direção certa / me ajudar a converter isso para script (s) do CentOS?

    
por The Mewwie 11.10.2016 / 10:51

1 resposta

0

O CentOS é uma distribuição Linux baseada na Red Hat e, como tal, não pode executar diretamente um script em lote do Windows. Você terá que convertê-lo para um formato que seja executável pela distribuição. Um exemplo poderia ser um script bash e poderia ser assim:

#!/bin/bash
cd ~/Documents
echo Current Directory = $(pwd)
read -p "Please insert domain name?" folder

if [ ! -d "$folder" ]; then
    mkdir $folder
    cd $folder
    touch CSR.txt
    touch KEY.txt

    vi CSR.txt
    vi KEY.txt
else
    currentDate=$(date +%F)
    mkdir $currentDate
    cd $currentDate

    touch CSR.txt
    touch KEY.txt

    vi CSR.txt
    vi KEY.txt
fi

O script acima encurta a currentDate para ser apenas a data no formato AAAA-MM-DD.

Dependendo do seu objetivo real, é aconselhável colocar muito mais trabalho nele. Você está criando um arquivo de texto CSR e KEY que sugere que você quer fazer algo ao longo das linhas de configuração de uma CA? Há muito o que levar em consideração com isso e estaria fora do escopo da sua pergunta, mas você realmente precisa ler sobre isso!

Além disso, fiz uma sugestão de mudança para o seu post inicial. Você fez algumas coisas realmente divertidas com a sua edição e sua indentação estava em todo lugar. Em stackexchange é geralmente suportado para prefixar um espaço / tab para marcar um bloco como código. O que neste caso realmente ajudaria.

    
por 11.10.2016 / 11:43