Преобразуйте двоичные строки в десятичные

Для доступа к машине Windows с машины Linux (из Терминала):

  1. Установить пакеты ntfs-3g и cifs-utils (sudo apt-get install или yum install).
  2. Создайте локальный каталог монтирования, например / shared.
  3. Отредактируйте / etc / fstab и добавьте в него что-то вроде этого: \\ WIN-IP \ share $ / shared cifs rw, noauth, suid, username = computer_name \ user_name 0 0
  4. Сохраните файл и запустите: mount -a
  5. Найдите / shared и запустите ls

Чтобы получить доступ к машине Windows с машины Ubuntu (из GUI):

  1. From ваш компьютер Ubuntu, откройте Nautilus.
  2. На левой панели нажмите «Подключиться к серверу».
  3. В поле «Адрес сервера» введите: smb: // WIN-IP / share

Connect to Server smb://computer_name/share_name

Чтобы получить доступ к машине Linux из Windows (из Терминала):

Следуйте этому официальному руководству Ubuntu .

Еще одна вещь, которую следует принять во внимание, - это то, что через WAN вам придется открыть TCP-порты 139 и 445 и UDP-порты 137-138, чтобы разрешить доступ Samba.

0
29.09.2018, 04:57
2 ответа

Вероятно, есть более элегантный способ, использующий Perl packи unpack, но использующий комбинацию манипуляций со строками иoct:

$ perl -pe 's/\b[01]+\b/oct "0b". $&/ge' file
ADD    $05  $05  $05
SUBI   $06  $06  3
MUL    $07  $07  $07
JSR    29

См. Преобразование двоичных, восьмеричных и шестнадцатеричных чисел

1
28.01.2020, 02:31

Попробуйте этот небольшой bashскрипт:

while read -a INP; do for i in ${INP[@]}; do [[ "$i" =~ [^10] ]] || i=$((2#$i));  printf "%s\t" "$i" ; done; printf "\n"; done < file3
ADD     $05     $05     $05 
SUBI    $06     $06     3   
MUL     $07     $07     $07 
JSR     29  

Полировка может помочь. Он считывает строки файла в массив, проверяет, содержат ли его элементы только двоичные цифры (0 и 1 ), использует «арифметическую оценку» с префиксом основания 2 2#, если да, прежде чем напечатать

2
28.01.2020, 02:31

Теги

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