Qual linguagem escolher para automatizar tarefas?

Pessoal, estou estudando Linux e com ele quero aprender uma linguagem para automatizar tarefas e criar softwares. Então, queria saber qual é melhor entre Python e Shell para fazer. Meu objetivo é criar softwares via linha de comando e mais pra frente com interface gráfica. Agradeço desde já a dica de todos.

2 Likes

@llofyy shell script serve para automatizar tarefas do sistema operacional Gnu/Linux e até permite criar alguns tipos de aplicações novas para o sistema. Porém, comparando com o Python, shell script para programar novas aplicações é bem limitado. Se seu objetivo é automatizar tarefas do sistema, use o shell script, se é criar softwares, use Python. Inclusive dá pra combinar ambos as linguagens em uma única aplicação, sinceramente só vejo vantagem nisso para tornar uma automatização de tarefa + “user-friendly” para o usuário.

5 Likes

Vi várias pessoas automatizando tarefas com Python, se consigo usar ele para fazer isso, e como ele é melhor pra criar aplicações, acho que nesse contexto ele seria a melhor escolha, não?

@llofyy provavelmente usaram uma combinação de ambos, o Python pra fazer a chamada de uma tarefa do sistema utiliza sintaxe própria que interage com o shell do sistema.

2 Likes

Sim, provavelmente fizeram isso. Vou dar uma pesquisada a fundo e ver se vai ser uma boa.

1 Like

Olá @llofyy, tudo bem contigo? Eu não acredito que exista uma linguagem “melhor”, existe sim, aquela que atende a sua necessidade e em que você consegue se aprimorar.

Dificilmente você vai fazer algo em 100% Python para o tipo de tarefa que você citou, porque estará muitas vezes chamando funções do sistema ou se aproveitando de funções já implementadas para que você não tenha que codificar tudo do zero.

Minha sugestão: vá estudando ambas e vendo como as linguagens se complementam e te ajudam a ser muito mais produtivo. Existe um pensamento recorrente de que é necessário “aprender o melhor” de uma coisa ou outra, mas na minha opinião essa mentalidade apenas limita a quantidade de aprendizados que uma pessoa pode ter.

P.s.: um dos caras mais “ninja” que eu conheço em Linux só usava Perl para seus macetes de administrador. :wink:

2 Likes

Cara, quem programa em Perl já é por si só ninja rsrs. Já faz um bom tempo que to tentando aprender esta linguagem pq uma vez comprei um curso de programação em Perl e ainda n dei conta de concluir kkkkkk

2 Likes

@eddiecsilva inclusive to querendo fazer um projeto para inicialmente criar uns posts sobre esta linguagem, para ver se animo alguns programadores a aprender sobre ela e para que possam ajudar não só a mim, mas também a outros que se interessem. O problema é que vai ser só o básico mesmo, pq dominei bem pouco da linguagem ainda. No meu “auge”, cheguei a fazer um jogo de perguntas e respostas com sistema de pontuação, mas n consegui concluir pq acabei me complicando depois de tantas gambiarras que fiz na programação.

1 Like

@willianlycan eu considero Perl é uma linguagem “difícil” eu já estudei ela um pouco, mas acabei me “bandeando” para Python e shellscript. Teve uma época “nonsense” minha que eu estava usando php-cli para fazer uns scripts mais complexos.

Mas hoje são mais fã da objetividade e simplicidade :wink: dificilmente acho algo que shellscript e as ferramentas do Linux não resolvam.

1 Like

Cara na contra mão eu te indico a linguagem Lua, não é por ser do contra mas a linguagem lua é muito próxima da linguagem humana que usamos no dia a dia

Bom eu não conheço muito de shell mas python é uma linguagem bem agradável de se programar, e dificilmente você se arrependerá de aprende-la.

Mas se está com muita duvida sobre isso pode ser melhor você aprender o básico das duas linguagens e depois decidir em qual delas você vai se aprofundar.

2 Likes

Sempre dizem que Python é perfeito pra iniciantes, quem sabe seja a melhor no momento.

2 Likes

Pra automatizar coisas Python é perfeito, pra escrever softwares, bom, é possível, mas dependendo do nível de complexidade vai ser lento, Python não é uma linguagem de performance, ela é muito lenta se comparada com linguagens como C, C++, Rust, e outras linguagens compiladas, se vc quiser entrar em programação como um todo então talvez seja uma boa introdução, mas eventualmente ela vai começar a limitar teu aprendizado por ‘‘esconder’’ bastante coisa das tuas mãos, mas no final a decisão é sua.

2 Likes

Os frameworks para Python não deixam ele melhor pra certas coisas?

Não, frameworks te permitem fazer certas coisas sem ter que implementar tudo do zero, mas eles não podem mudar a linguagem, se for algo complexo Python vai ser lento e não tem o que fazer, isso se aplica a linguagens de script em geral, elas não são feitas pra se escrever softwares complexos, no máximo vão ser usadas pra automatizar uma coisa ou outra ali dentro, Lua mesmo foi feita pra automatizar C, mas pra scriptar e automatizar coisas, é isso.

1 Like